There are 6 ways to get from Bernese Oberland 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 Spiez to Domodossolatrain Ec / ...
- Take the train from Domodossola to Milano Centraletrain Ec
5h 21m€51–117Train via Milano P.Garibaldi
cheapest- Take the train from Spiez to Domodossolatrain Ec / ...
- Take the train from Domodossola to Milano P.Garibalditrain Re
6h 2m€36–67Bus
- Take the bus from Interlaken Bahnhof West to Zürich HB Schweizerhofbus Shuttler L1 online shuttle
- Take the bus from ZÜRICH, Carparkplatz am Sihlquai to Milano - Famagostabus
5h 52mDrive 264.1 km
- Drive from Bernese Oberland to Milancar 264.1 km
3h 14m€46–67Train, fly
- Take the train from Interlaken West 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
5h 35m€141–377Line 21 bus, train, bus
- Take the bus from Unterseen, Widimatt to Thun, Bahnhofbus 21
- Take the train from Thun to Domodossolatrain Ec / ...
- Take the bus from Domodossola to Milano Centralebus Re4
6h 10m
Zurich Airport (ZRH) to Milano Malpensa Airport (MXP) flights
Questions & Answers
The cheapest way to get from Bernese Oberland to Milan is to train via Milano P.Garibaldi which costs €35 - €70 and takes 6h 2m.
The fastest way to get from Bernese Oberland to Milan is to drive which takes 3h 14m and costs €45 - €70.
No, there is no direct bus from Bernese Oberland to Milan. However, there are services departing from Interlaken Bahnhof West and arriving at Milano - Famagosta via ZÜRICH, Carparkplatz am Sihlquai. The journey, including transfers, takes approximately 5h 52m.
No, there is no direct train from Bernese Oberland to Milan. However, there are services departing from Interlaken West and arriving at Milano Centrale via Spiez and Domodossola. The journey, including transfers, takes approximately 5h 21m.
The distance between Bernese Oberland and Milan is 239 km. The road distance is 264.1 km.
The best way to get from Bernese Oberland to Milan without a car is to train which takes 5h 21m and costs €50 - €120.
It takes approximately 5h 21m to get from Bernese Oberland to Milan, including transfers.
Bernese Oberland to Milan bus services, operated by Shuttler, depart from Interlaken Bahnhof West station.
Bernese Oberland to Milan train services, operated by Swiss Federal Railways (SBB CFF FFS), depart from Spiez station.
The best way to get from Bernese Oberland to Milan is to train which takes 5h 21m and costs €50 - €120. Alternatively, you can bus, which costs and takes 5h 52m.
What companies run services between Bernese Oberland, Switzerland and Milan, Italy?
You can take a vehicle from Bernese Oberland to Milano Centrale via Interlaken West, Spiez, and Domodossola in around 5h 21m. Alternatively, you can take a vehicle from Bernese Oberland to Milano - Famagosta via Interlaken Bahnhof West, Zürich HB Schweizerhof, and ZÜRICH, Carparkplatz am Sihlquai in around 5h 52m.
- Website
- swiss.com
Flights from Zurich Airport to Milano Malpensa Airport
- Ave. Duration
- 55 min
- When
- Every day
- Estimated price
- €70–330
- Website
- ethiopianairlines.com
Flights from Zurich Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- €95–160
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Spiez to Domodossola
- Ave. Duration
- 1h 7m
- Frequency
- 3 times a day
- Estimated price
- €35–110
- Website
- https://www.sbb.ch/en
Train from Interlaken West to Zürich Flughafen
- Ave. Duration
- 2h 10m
- Frequency
- Every 4 hours
- Estimated price
- €65–210
- Website
- https://www.sbb.ch/en
Train from Spiez to Domodossola
- Ave. Duration
- 1h 7m
- Frequency
- 3 times a day
- Estimated price
- €35–110
- Website
- https://www.sbb.ch/en
Train from Thun to Domodossola
- Ave. Duration
- 1h 18m
- Frequency
- 3 times a day
- Estimated price
- €35–120
- Website
- https://www.sbb.ch/en
- Phone
- +41 58 327 32 71
- Website
- bls.ch
Train from Spiez to Domodossola
- Ave. Duration
- 1h 41m
- Frequency
- Every 3 hours
- Estimated price
- €17–24
- Website
- https://www.bls.ch/en
Train from Spiez to Domodossola
- Ave. Duration
- 1h 41m
- Frequency
- Every 3 hours
- Estimated price
- €17–24
- Website
- https://www.bls.ch/en
- Phone
- +39 06 68475475
- [email protected]
- 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
- Phone
- +39 02 7249 4494
- [email protected]
- Website
- trenord.it
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 Milano P.Garibaldi
- Ave. Duration
- 2h 14m
- Frequency
- Every 2 hours
- Estimated price
- €15–25
- Website
- https://www.trenitalia.com/en.html
- Phone
- +41 44 552 0807
- [email protected]
- Website
- shuttler.ch
Bus from Interlaken Bahnhof West to Zürich HB Schweizerhof
- Ave. Duration
- 1h 55m
- Frequency
- 5 times a week
- Estimated price
- €24–28
- Website
- https://shuttler.ch/
- Phone
- +39 0362 185 0590
- [email protected]
- Website
- onebus.it
Bus from ZÜRICH, Carparkplatz am Sihlquai to Milano - Famagosta
- Ave. Duration
- 2h 22m
- Frequency
- Once a week
- Website
- https://onebus.it/
- Phone
- +41 33 225 13 13
- Website
- stibus.ch
Bus from Unterseen, Widimatt to Thun, Bahnhof
- Ave. Duration
- 51 min
- Frequency
- Hourly
- Estimated price
- €11–16
- Schedules at
- stibus.ch
- Phone
- +39 02 7249 4494
- [email protected]
- Website
- trenord.it
Bus from Domodossola to Milano Centrale
- Ave. Duration
- 1h 40m
- Frequency
- Every 2 hours
- Website
- https://www.trenord.it/en/
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
Getting to Milan from the airport
Read the travel guide
More Questions & Answers
Bernese Oberland to Milan bus services, operated by Shuttler, arrive at Zürich HB Schweizerhof station.
Bernese Oberland to Milan train services, operated by Swiss Federal Railways (SBB CFF FFS), arrive at Domodossola station.
Yes, the driving distance between Bernese Oberland to Milan is 264 km. It takes approximately 3h 14m to drive from Bernese Oberland to Milan.
There are 14404+ hotels available in Milan.


























