There are 8 ways to get from Bern to Milan by bus, train, car, plane, or train (Trenitalia)
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Bus
best- Take the bus from Bern to Zurich Bus Stationbus 3909
- Take the bus from ZÜRICH, Carparkplatz am Sihlquai to Milano - Famagostabus
4h 57m€68–101Train via Reichenbach
cheapest- Take the train from Bern to Spieztrain Ic8 / ...
- Take the train from Mülenen to Domodossolatrain Re1
- Take the train from Domodossola to Milano P.Garibalditrain Re
6h 52m€44–63Train, bus
- Take the train from Bern to Brigtrain Ic8 / ...
- Take the bus from Domodossola to Rho Fiera Milanobus Re4
5h 21mDrive 316.5 km
- Drive from Bern to Milancar 316.5 km
3h 50m€66–95Train to Zurich Airport, fly to Milano Malpensa Airport, train
- 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€116–261Train
- Take the train from Bern to Locarnotrain Ic
- Take the train from Locarno to Milano Centraletrain Re80
5h 43m€97–146Train via Zurich
- Take the train from Bern to Zürich HBtrain Ic1 / ...
- Take the train from Zürich HB to Como S. Giovannitrain Ec
- Take the train from Como S.Giovanni to Milano Porta Garibalditrain S11
5h 47m€108–192Train to Geneva International Airport, fly to Milan Linate Airport
- Take the train from Bern to Genève-Aéroporttrain
- Fly from Geneva International Airport (GVA) to Milan Linate Airport (LIN)plane GVA - LIN
5h 38m€85–376
Zurich Airport (ZRH) to Milano Malpensa Airport (MXP) flights
Comparing Your Travel Options
The cheapest way to get from Bern to Milan is to train via Reichenbach which costs €40 - €65 and takes 6h 52m.
The fastest way to get from Bern to Milan is to drive which takes 3h 50m and costs €65 - €95.
No, there is no direct bus from Bern to Milan. However, there are services departing from Bern and arriving at Milano - Famagosta via ZÜRICH, Carparkplatz am Sihlquai. The journey, including transfers, takes approximately 4h 57m.
No, there is no direct train from Bern to Milan. However, there are services departing from Bern and arriving at Milano Centrale via Locarno. The journey, including transfers, takes approximately 5h 43m.
The distance between Bern and Milan is 438 km. The road distance is 316.5 km.
The best way to get from Bern to Milan without a car is to bus which takes 4h 57m and costs €65 - €110.
It takes approximately 4h 57m 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 bus which takes 4h 57m and costs €65 - €110. Alternatively, you can train, which costs €95 - €150 and takes 5h 43m.
What companies run services between Bern, Switzerland and Milan, Italy?
You can take a bus from Bern to Milano - Famagosta via ZÜRICH, Carparkplatz am Sihlquai in around 4h 57m. Alternatively, you can take a train from Bern to Milano Centrale via Locarno in around 5h 43m.
- Website
- swiss.com
Flights from Zurich Airport to Milano Malpensa Airport
- Ave. Duration
- 56 min
- When
- Every day
- Estimated price
- €65–350
- Website
- ethiopianairlines.com
Flights from Zurich Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 7m
- When
- Every day
- Estimated price
- €95–160
- Website
- easyjet.com
Flights from Geneva International Airport to Milan Linate Airport
- Ave. Duration
- 1h
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €30–230
Train from Bern to Brig
- Ave. Duration
- 1h 6m
- Frequency
- Hourly
- Estimated price
- €30–55
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Bern to Zürich Flughafen
- Ave. Duration
- 1h 12m
- Frequency
- Hourly
- Estimated price
- €40–65
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Bern to Locarno
- Ave. Duration
- 2h 57m
- Frequency
- Once a week
- Estimated price
- €85–140
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Bern to Zürich HB
- Ave. Duration
- 56 min
- Frequency
- Every 30 minutes
- Estimated price
- €35–60
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Zürich HB to Como S. Giovanni
- Ave. Duration
- 2h 35m
- Frequency
- Hourly
- Estimated price
- €65–110
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Como S.Giovanni to Milano Porta Garibaldi
- Ave. Duration
- 1h 2m
- Frequency
- Once daily
- Estimated price
- €15–25
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Bern to Spiez
- Ave. Duration
- 30 min
- Frequency
- Every 30 minutes
- Estimated price
- €13–22
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Bern to Genève-Aéroport
- Ave. Duration
- 2h 11m
- Frequency
- Hourly
- Estimated price
- €50–85
- Website
- Swiss Federal Railways (SBB CFF FFS)
- Phone
- +39 02 7249 4494
- [email protected]
- 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
Train from Locarno to Milano Centrale
- Ave. Duration
- 1h 58m
- Frequency
- Hourly
- Estimated price
- €8–10
- Website
- Trenord
Train from Como S.Giovanni to Milano Porta Garibaldi
- Ave. Duration
- 1h 1m
- Frequency
- Hourly
- Estimated price
- €4–6
- Website
- Trenord
- Phone
- +41 58 580 70 70
- Website
- Schweizerische Südostbahn AG
Train from Bern to Zürich HB
- Ave. Duration
- 1h 30m
- Frequency
- Once a week
- Estimated price
- €35–60
- Schedules at
- Schweizerische Südostbahn AG
- 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 Mülenen to Domodossola
- Ave. Duration
- 1h 36m
- Frequency
- Every 3 hours
- Estimated price
- €19–27
- Website
- BLS AG
- Phone
- +39.06.5210550
- Website
- Trenitalia
Train from Domodossola to Milano P.Garibaldi
- Ave. Duration
- 2h 14m
- Frequency
- Every 4 hours
- Estimated price
- €14–20
- Website
- Trenitalia
Rome2Rio's guide to FlixBus
Contact Details
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Bern to Zurich Bus Station
- Ave. Duration
- 1h 35m
- Frequency
- 4 times a week
- Estimated price
- €10–16
- Website
- Flixbus
- Phone
- +420 222 222 221
- [email protected]
- Website
- RegioJet
Bus from Bern to Zurich Bus Station
- Ave. Duration
- 1h 45m
- Frequency
- Twice a week
- Estimated price
- €7–13
- Website
- RegioJet
- Phone
- +39 0362 185 0590
- [email protected]
- Website
- Onebus
Bus from ZÜRICH, Carparkplatz am Sihlquai to Milano - Famagosta
- Ave. Duration
- 2h 22m
- Frequency
- Once a week
- Estimated price
- €60–85
- Website
- Onebus
- Phone
- +39 02 7249 4494
- [email protected]
- Website
- Trenord
Bus from Domodossola to Rho Fiera Milano
- Ave. Duration
- 1h 25m
- Frequency
- Every 2 hours
- Website
- Trenord
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
Want to know more about Flixbus?
Read the travel guide
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide
Booking & Getting There
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 Locarno station.
Yes, the driving distance between Bern to Milan is 317 km. It takes approximately 3h 50m 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 Omio.
There are 13746+ hotels available in Milan.





















