There are 6 ways to get from Bern to Milan 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 Bern to Brigtrain Ic8 / ...
- Take the train from Domodossola to Rho Fiera Milanotrain Re 4 / ...
4h 36m€51–95Bus
cheapest- Take the bus from Bern to Zurich Bus Stationbus N1149 / ...
- Take the bus from Zurich Bus Station to Milano, Autostazione Lampugnanobus N177 / ...
5h 56m€22–61Drive 316.6 km
- Drive from Bern to Milancar 316.6 km
3h 49m€55–79Train, fly
- Take the train from Bern to Zürich Flughafentrain
- Fly from Zurich Airport (ZRH) to Milano Malpensa Airport (MXP)plane ZRH - MXP
- Take the train from Malpensa Aeroporto T1 to Milano Porta Garibalditrain
4h 17m€107–260Train via Spiez
- Take the train from Bern to Spieztrain Ic8 / ...
- Take the train from Spiez to Domodossolatrain Ec / ...
- Take the train from Domodossola to Rho Fiera Milanotrain
4h 40m€35–105Train via Spiez #2
- Take the train from Bern to Spieztrain Ic8 / ...
- Take the train from Spiez to Domodossolatrain Ec / ...
- Take the train from Domodossola to Milano Centraletrain Ec
4h 48m€56–167
Bern to Milan by train
Questions & Answers
The cheapest way to get from Bern to Milan is to bus which costs €22 - €65 and takes 5h 56m.
The fastest way to get from Bern to Milan is to drive which takes 3h 49m and costs €50 - €80.
No, there is no direct bus from Bern to Milan. However, there are services departing from Bern and arriving at Milano, Autostazione Lampugnano via Zurich Bus Station. The journey, including transfers, takes approximately 5h 56m.
No, there is no direct train from Bern to Milan. However, there are services departing from Bern and arriving at Milano Porta Garibaldi via Brig, Domodossola and Rho Fiera Milano. The journey, including transfers, takes approximately 4h 36m.
The distance between Bern and Milan is 261 km. The road distance is 316.6 km.
The best way to get from Bern to Milan without a car is to train which takes 4h 36m and costs €50 - €95.
It takes approximately 4h 36m to get from Bern to Milan, including transfers.
Bern to Milan bus services, operated by FlixBus, depart from Bern station.
Bern to Milan train services, operated by Swiss Federal Railways (SBB CFF FFS), depart from Bern station.
The best way to get from Bern to Milan is to train which takes 4h 36m and costs €50 - €95. Alternatively, you can bus, which costs €22 - €65 and takes 5h 56m.
What companies run services between Bern, Switzerland and Milan, Italy?
You can take a train from Bern to Milano Porta Garibaldi via Brig, Domodossola, and Rho Fiera Milano in around 4h 36m. Alternatively, you can take a bus from Bern to Milano, Autostazione Lampugnano via Zurich Bus Station in around 5h 56m.
- Website
- swiss.com
Flights from Zurich Airport to Milano Malpensa Airport
- Ave. Duration
- 55 min
- When
- Every day
- Estimated price
- €75–230
- Website
- ethiopianairlines.com
Flights from Zurich Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- €65–160
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Bern to Brig
- Ave. Duration
- 1h 6m
- Frequency
- Hourly
- Estimated price
- €35–65
- Website
- https://www.sbb.ch/en
Train from Bern to Zürich Flughafen
- Ave. Duration
- 1h 20m
- Frequency
- Hourly
- Estimated price
- €35–65
- Website
- https://www.sbb.ch/en
Train from Bern to Spiez
- Ave. Duration
- 30 min
- Frequency
- Every 30 minutes
- Estimated price
- €25–28
- Website
- https://www.sbb.ch/en
Train from Spiez to Domodossola
- Ave. Duration
- 1h 7m
- Frequency
- 4 times a day
- Estimated price
- €40–65
- Website
- https://www.sbb.ch/en
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Domodossola to Rho Fiera Milano
- Ave. Duration
- 1h 24m
- Frequency
- Every 2 hours
- Estimated price
- €8–10
- Website
- https://www.trenord.it/en/
Train from Malpensa Aeroporto T1 to Milano Porta Garibaldi
- Ave. Duration
- 44 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- https://www.trenord.it/en/
- Phone
- +39.06.5210550
- Website
- trenitalia.com
Train from Domodossola to Rho Fiera Milano
- Ave. Duration
- 2h 3m
- Frequency
- Every 4 hours
- Estimated price
- €10–12
- Website
- https://www.trenitalia.com/en.html
- Phone
- +41 58 327 32 71
- Website
- bls.ch
Train from Bern to Spiez
- Ave. Duration
- 31 min
- Frequency
- 6 times a week
- Estimated price
- €8–12
- Website
- https://www.bls.ch/en
Train from Spiez to Domodossola
- Ave. Duration
- 1h 41m
- Frequency
- Hourly
- Estimated price
- €17–24
- Website
- https://www.bls.ch/en
- Phone
- +39 06 68475475
- ufficiogruppi@trenitalia.it
- Website
- trenitalia.com
Train from Domodossola to Milano Centrale
- Ave. Duration
- 1h 33m
- Frequency
- 4 times a week
- Estimated price
- €30–75
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- €50–75
- 2nd Class
- €30–45
Rome2Rio's guide to FlixBus
Contact Details
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Bern to Zurich Bus Station
- Ave. Duration
- 1h 30m
- Frequency
- 5 times a day
- Estimated price
- €11–17
- Website
- https://www.flixbus.co.uk
Bus from Zurich Bus Station to Milano, Autostazione Lampugnano
- Ave. Duration
- 3h 35m
- Frequency
- Hourly
- Estimated price
- €21–45
- Website
- https://www.flixbus.co.uk
- Phone
- +420 222 222 221
- info@regiojet.cz
- Website
- regiojet.com
Bus from Bern to Zurich Bus Station
- Ave. Duration
- 1h 45m
- Frequency
- Once a week
- Estimated price
- €7–11
- Website
- https://regiojet.com/
Bus from Zurich Bus Station to Milano, Autostazione Lampugnano
- Ave. Duration
- 4h 25m
- Frequency
- Once a week
- Estimated price
- €23–40
- Website
- https://regiojet.com/
- Phone
- +39 06 88 93 82 32
- Website
- itabus.it
Bus from Zurich Bus Station to Milano, Autostazione Lampugnano
- Ave. Duration
- 5h 10m
- Frequency
- Once daily
- Estimated price
- €15–35
- Website
- https://www.itabus.it/en/home
Want to know more about travelling around Italy
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
Bern to Milan bus services, operated by FlixBus, arrive at Zurich Bus Station.
Bern to Milan train services, operated by Swiss Federal Railways (SBB CFF FFS), arrive at Brig station.
Yes, the driving distance between Bern to Milan is 317 km. It takes approximately 3h 49m to drive from Bern to Milan.
Book your Bern to Milan train tickets online with Omio.
Book your Bern to Milan bus tickets online with FlixBus.
There are 13756+ hotels available in Milan.



























