There are 5 ways to get from Canton of Bern to Milan by train, bus, train (Trenitalia), car, 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, bus
best- Take the train from Bern to Spieztrain Ic8 / ...
- Take the train from Spiez to Domodossolatrain Ec / ...
- Take the bus from Domodossola to Milano Centralebus Re4
5h 12mBus
cheapest- Take the bus from Bern to Aostabus FlixBus N506
- Take the bus from Aosta to Milano, Autostazione Lampugnanobus BlaBlaCar Bus
7h 21m€32–54Train
- Take the train from Bern to Spieztrain Ic8 / ...
- Take the train from Spiez to Domodossolatrain Ec / ...
- Take the train from Domodossola to Milano P.Garibalditrain Re
5h 46m€40–56Drive 316.5 km
- Drive from Bern to Milancar 316.5 km
3h 50m€57–83Train, 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 10m€112–260
Zurich Airport (ZRH) to Milano Malpensa Airport (MXP) flights
Comparing Your Travel Options
The cheapest way to get from Canton of Bern to Milan is to bus which costs €30 - €55 and takes 7h 21m.
The fastest way to get from Canton of Bern to Milan is to drive which takes 3h 50m and costs €55 - €85.
No, there is no direct bus from Canton of Bern to Milan. However, there are services departing from Bern, Bollwerk and arriving at Milano, Autostazione Lampugnano via Bern and Aosta. The journey, including transfers, takes approximately 7h 21m.
No, there is no direct train from Canton of Bern to Milan. However, there are services departing from Bern and arriving at Milano P.Garibaldi via Spiez and Domodossola. The journey, including transfers, takes approximately 5h 46m.
The distance between Canton of Bern and Milan is 280 km. The road distance is 316.5 km.
The best way to get from Canton of Bern to Milan without a car is to train and bus which takes 5h 12m and costs .
It takes approximately 5h 12m to get from Canton of Bern to Milan, including transfers.
Canton of Bern to Milan bus services, operated by FlixBus, depart from Bern station.
Canton of Bern to Milan train services, operated by Swiss Federal Railways (SBB CFF FFS), depart from Bern station.
The best way to get from Canton of Bern to Milan is to train which takes 5h 46m and costs €35 - €60. Alternatively, you can bus, which costs €30 - €55 and takes 7h 21m.
What companies run services between Canton of Bern, Switzerland and Milan, Italy?
You can take a train from Bern to Milano P.Garibaldi via Spiez and Domodossola in around 5h 46m. Alternatively, you can take a bus from Bern, Bollwerk to Milano, Autostazione Lampugnano via Bern, Neufeld P+R, Bern, and Aosta in around 7h 21m.
- Website
- swiss.com
Flights from Zurich Airport to Milano Malpensa Airport
- Ave. Duration
- 55 min
- When
- Every day
- Estimated price
- €70–350
- Website
- ethiopianairlines.com
Flights from Zurich Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- €95–160
Train from Bern to Spiez
- Ave. Duration
- 30 min
- Frequency
- Every 30 minutes
- Estimated price
- €12–18
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Spiez to Domodossola
- Ave. Duration
- 1h 7m
- Frequency
- 3 times a day
- Estimated price
- €29–45
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Bern to Spiez
- Ave. Duration
- 30 min
- Frequency
- Every 30 minutes
- Estimated price
- €12–18
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Spiez to Domodossola
- Ave. Duration
- 1h 7m
- Frequency
- 3 times a day
- Estimated price
- €29–45
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Bern to Zürich Flughafen
- Ave. Duration
- 1h 12m
- Frequency
- Hourly
- Estimated price
- €35–55
- Website
- Swiss Federal Railways (SBB CFF FFS)
- Phone
- +41 58 327 32 71
- Website
- BLS AG
Train from Bern to Spiez
- Ave. Duration
- 34 min
- Frequency
- Twice a week
- Estimated price
- €8–12
- Website
- BLS AG
Train from Spiez to Domodossola
- Ave. Duration
- 1h 41m
- Frequency
- Every 3 hours
- Estimated price
- €17–24
- Website
- BLS AG
Train from Bern to Spiez
- Ave. Duration
- 34 min
- Frequency
- Twice a week
- Estimated price
- €8–12
- Website
- BLS AG
Train from Spiez to Domodossola
- Ave. Duration
- 1h 41m
- Frequency
- Every 3 hours
- Estimated price
- €17–24
- Website
- BLS AG
- Phone
- +39.06.5210550
- Website
- Trenitalia
Train from Domodossola to Milano P.Garibaldi
- Ave. Duration
- 2h 14m
- Frequency
- Every 2 hours
- Estimated price
- €14–20
- Website
- Trenitalia
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- Trenord
Train from Malpensa Aeroporto T1 to Milano Porta Garibaldi
- Ave. Duration
- 44 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- Trenord
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- Trenord
Bus from Domodossola to Milano Centrale
- Ave. Duration
- 1h 40m
- Frequency
- Every 2 hours
- Website
- Trenord
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- Flixbus
Bus from Bern to Aosta
- Ave. Duration
- 3h 5m
- Frequency
- Once daily
- Estimated price
- €16–26
- Website
- Flixbus
Bus from Aosta to Milano, Autostazione Lampugnano
- Ave. Duration
- 3h 30m
- Frequency
- Twice daily
- Estimated price
- €14–23
- Website
- Flixbus
- Phone
- +3 318 576 2228
- Website
- BlaBlaCar Bus
Bus from Aosta to Milano, Autostazione Lampugnano
- Ave. Duration
- 2h 10m
- Frequency
- Every 4 hours
- Estimated price
- €12–20
- Website
- BlaBlaCar Bus
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 guideHeading to Europe? Read this before you buy a Eurail Pass
Read the travel guideGetting to Milan from the airport
Read the travel guideBooking & Getting There
Canton of Bern to Milan bus services, operated by FlixBus, arrive at Aosta station.
Canton of Bern to Milan train services, operated by Swiss Federal Railways (SBB CFF FFS), arrive at Spiez station.
Yes, the driving distance between Canton of Bern to Milan is 317 km. It takes approximately 3h 50m to drive from Canton of Bern to Milan.
Book your Canton of Bern to Milan train tickets online with Omio.
There are 13888+ hotels available in Milan.