There are 6 ways to get from Milan to Bern by train (Trenitalia), bus, car, train, or plane
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train
best- Take the train from Milano Centrale to Domodossolatrain Ec
- Take the train from Domodossola to Spieztrain Ec / ...
- Take the train from Spiez to Berntrain Ic8 / ...
4hCHF 53–104Bus
cheapest- Take the bus from Milano, Autostazione Lampugnano to Aostabus BlaBlaCar Bus
- Take the bus from Aosta to Bernbus FlixBus N506
6h 20mCHF 23–43Drive 316.5 km
- Drive from Milan to Berncar 316.5 km
3h 49mCHF 51–74Train, fly
- Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Zurich Airport (ZRH)plane MXP - ZRH
- Take the train from Zürich Flughafen to Berntrain
4h 18mCHF 109–305Train via Milano Centrale
- Take the train from Milano Centrale to Domodossolatrain
- Take the train from Domodossola to Spieztrain Ec / ...
- Take the train from Spiez to Berntrain Ic8 / ...
4h 6mCHF 31–44Train #2
- Take the train from Milano Centrale to Domodossolatrain Ec
- Take the train from Brig to Berntrain Ic8 / ...
4h 7mCHF 67–175
Milan to Bern by train
Questions & Answers
The cheapest way to get from Milan to Bern is to bus which costs SFr 23 - SFr 45 and takes 6h 20m.
The fastest way to get from Milan to Bern is to drive which takes 3h 49m and costs SFr 50 - SFr 75.
No, there is no direct bus from Milan to Bern. However, there are services departing from Milano, Autostazione Lampugnano and arriving at Bern via Aosta. The journey, including transfers, takes approximately 6h 20m.
No, there is no direct train from Milan to Bern. However, there are services departing from Milano Centrale and arriving at Bern via Domodossola and Spiez. The journey, including transfers, takes approximately 4h.
The distance between Milan and Bern is 262 km. The road distance is 316.5 km.
The best way to get from Milan to Bern without a car is to train which takes 4h and costs SFr 50 - SFr 110.
It takes approximately 4h to get from Milan to Bern, including transfers.
Milan to Bern bus services, operated by BlaBlaCar Bus, depart from Milano, Autostazione Lampugnano station.
Milan to Bern train services, operated by Trenitalia EuroCity, depart from Milano Centrale station.
The best way to get from Milan to Bern is to train which takes 4h and costs SFr 50 - SFr 110. Alternatively, you can bus, which costs SFr 23 - SFr 45 and takes 6h 20m.
What companies run services between Milan, Italy and Bern, Switzerland?
You can take a train from Milano Centrale to Bern via Domodossola and Spiez in around 4h. Alternatively, you can take a bus from Milano, Autostazione Lampugnano to Bern via Aosta in around 6h 20m.
- Website
- swiss.com
Flights from Milano Malpensa Airport to Zurich Airport
- Ave. Duration
- 58 min
- When
- Every day
- Estimated price
- CHF 65–190
- Website
- ethiopianairlines.com
Flights from Milano Malpensa Airport to Zurich Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- CHF 50–180
- Phone
- +39 06 68475475
- ufficiogruppi@trenitalia.it
- Website
- trenitalia.com
Train from Milano Centrale to Domodossola
- Ave. Duration
- 1h 33m
- Frequency
- Every 4 hours
- Estimated price
- CHF 30–70
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- CHF 50–70
- 2nd Class
- CHF 30–40
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Domodossola to Spiez
- Ave. Duration
- 1h 5m
- Frequency
- 3 times a day
- Estimated price
- CHF 30–95
- Website
- https://www.sbb.ch/en
Train from Spiez to Bern
- Ave. Duration
- 33 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 13–40
- Website
- https://www.sbb.ch/en
Train from Zürich Flughafen to Bern
- Ave. Duration
- 1h 19m
- Frequency
- Hourly
- Estimated price
- CHF 40–120
- Website
- https://www.sbb.ch/en
Train from Brig to Bern
- Ave. Duration
- 1h 8m
- Frequency
- Hourly
- Estimated price
- CHF 30–95
- Website
- https://www.sbb.ch/en
- Phone
- +41 58 327 32 71
- Website
- bls.ch
Train from Domodossola to Spiez
- Ave. Duration
- 1h 46m
- Frequency
- Hourly
- Estimated price
- CHF 17–24
- Website
- https://www.bls.ch/en
Train from Spiez to Bern
- Ave. Duration
- 41 min
- Frequency
- 4 times a week
- Estimated price
- CHF 6–10
- Website
- https://www.bls.ch/en
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Milano Porta Garibaldi to Malpensa Aeroporto T1
- Ave. Duration
- 43 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 4–5
- Website
- https://www.trenord.it/en/
Train from Milano Centrale to Domodossola
- Ave. Duration
- 1h 39m
- Frequency
- Every 2 hours
- Estimated price
- CHF 8–10
- Website
- https://www.trenord.it/en/
- Phone
- +3-389-268-0068
- Website
- blablacar.co.uk
Bus from Milano, Autostazione Lampugnano to Aosta
- Ave. Duration
- 2h 15m
- Frequency
- 3 times a day
- Estimated price
- CHF 11–21
- Website
- https://www.blablacar.co.uk/bus
Rome2Rio's guide to FlixBus
Contact Details
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Milano, Autostazione Lampugnano to Aosta
- Ave. Duration
- 2h 20m
- Frequency
- Twice daily
- Estimated price
- CHF 11–20
- Website
- https://www.flixbus.co.uk
Bus from Aosta to Bern
- Ave. Duration
- 3h 5m
- Frequency
- Once daily
- Estimated price
- CHF 12–23
- Website
- https://www.flixbus.co.uk
Want to know more about travelling around Switzerland
Rome2Rio's Travel Guide series provide vital information for the global traveller. Filled with useful and timely travel information, the guides answer all the hard questions - such as 'How do I buy a ticket?', 'Should I book online before I travel? ', 'How much should I expect to pay?', 'Do the trains and buses have Wifi?' - to help you get the most out of your next trip.
Related travel guides
Italy Travel Guides
Read the travel guide
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide
Want to know more about Flixbus?
Read the travel guide
More Questions & Answers
Milan to Bern bus services, operated by BlaBlaCar Bus, arrive at Aosta station.
Milan to Bern train services, operated by Trenitalia EuroCity, arrive at Domodossola station.
Yes, the driving distance between Milan to Bern is 317 km. It takes approximately 3h 49m to drive from Milan to Bern.
Book your Milan to Bern train tickets online with Omio.
Book your Milan to Bern bus tickets online with Omio and FlixBus.
There are 363+ hotels available in Bern.




























