There are 9 ways to get from Zürich to Milan by train, bus, rideshare, 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.

Recommended option

Train  •  3h 40m

  1. Take the train from Zuerich Hb to Milano Centrale Ec

70€ - 130€

Cheapest option

Bus  •  4h 16m

  1. Take the bus from Zurich to Milan, Milan 519 / ...

10€ - 21€

7 alternative options

Train via Como  •  3h 41m

  1. Take the train from Zuerich Hb to Chiasso Ec / ...
  2. Take the train from Chiasso to Milano Centrale Re_10 / ...

65€ - 113€

Train via Como #2  •  4h 1m

  1. Take the train from Zuerich Hb to Chiasso Ec / ...
  2. Take the train from Chiasso to Milano Porta Garibaldi S11

65€ - 113€

Bus via Como  •  6h 31m

  1. Take the bus from Zürich to Como Grandate

15€ - 21€

Rideshare  •  3h 41m

  1. Take the rideshare from Zurich to Milan 287.1 km

17€

Drive  •  3h 13m

  1. Drive from Zürich to Milan 288.2 km

35€ - 60€

Fly to Milan Malpensa  •  3h 3m

  1. Fly from Zurich (ZRH) to Milan Malpensa (MXP) ZRH - MXP

74€ - 294€

Fly to Milan Linate  •  5h 29m

  1. Fly from Zurich (ZRH) to Milan Linate (LIN) ZRH - LIN

74€ - 210€

Questions & Answers

There is widespread community transmission globally.
Some travel restrictions are being lifted in Italy. For the latest travel status, please check the official page for Italy.

Learn More.

The cheapest way to get from Zürich to Milan is to rideshare which costs SFr 18 and takes 3h 41m.

More details

The quickest way to get from Zürich to Milan is to fly which costs SFr 75 - SFr 320 and takes 3h 3m.

More details

No, there is no direct bus from Zürich to Milan. However, there are services departing from Zurich and arriving at conciliazione m1 via lampugnano m1. The journey, including transfers, takes approximately 4h 16m.

More details

Yes, there is a direct train departing from Zuerich Hb and arriving at Milano Centrale. Services depart every four hours, and operate every day. The journey takes approximately 3h 40m.

More details

The distance between Zürich and Milan is 217 km. The road distance is 288.2 km.

Get driving directions

The best way to get from Zürich to Milan without a car is to train which takes 3h 40m and costs SFr 75 - SFr 140.

More details

The train from Zuerich Hb to Milano Centrale takes 3h 40m including transfers and departs every four hours.

More details

Zürich to Milan bus services, operated by FlixBus, depart from Zurich station.

More details

Zürich to Milan train services, operated by Swiss Railways (SBB/CFF/FFS), depart from Zuerich Hb station.

More details

Map of how to get from Zürich to Milan.
Launch map view
  • Distance: 217.1 km
  • Duration: 3h 40m

What companies run services between Zürich, Switzerland and Milan, Italy?

Swiss Railways (SBB/CFF/FFS) operates a train from Zuerich Hb to Milano Centrale every 4 hours. Tickets cost 70€ - 130€ and the journey takes 3h 40m. Alternatively, FlixBus operates a bus from Zurich to Milan, Milan every 4 hours. Tickets cost 15€ - 19€ and the journey takes 3h 50m. Three other operators also service this route.

Airlines
British Airways
Website
britishairways.com
Flights from Zurich to Milan Linate via London Heathrow
Ave. Duration
5h 11m
When
Every day
Estimated price
130€ - 650€
Flights from Zurich to Milan Linate via London City
Ave. Duration
5h 35m
When
Monday to Saturday
Estimated price
130€ - 650€
Swiss
Website
swiss.com
Flights from Zurich to Milan Malpensa
Ave. Duration
55 min
When
Every day
Estimated price
90€ - 300€
Lufthansa
Website
lufthansa.com
Flights from Zurich to Milan Linate via Frankfurt
Ave. Duration
3h 43m
When
Every day
Estimated price
150€ - 410€
Brussels Airlines
Website
brusselsairlines.com
Flights from Zurich to Milan Linate via Brussels
Ave. Duration
4h 18m
When
Every day
Estimated price
130€ - 600€
Alitalia
Website
alitalia.com
Flights from Zurich to Milan Linate via Rome
Ave. Duration
4h
When
Monday, Tuesday, Wednesday, Thursday, Friday and Sunday
Estimated price
75€ - 320€
easyJet
Website
easyjet.com
Flights from Zurich to Milan Linate via London Gatwick
Ave. Duration
6h
When
Monday, Thursday, Friday, Saturday and Sunday
Estimated price
80€ - 200€
KLM
Website
klm.com
Flights from Zurich to Milan Linate via Amsterdam Schiphol
Ave. Duration
4h 25m
When
Saturday and Sunday
Estimated price
120€ - 340€
Air France
Website
airfrance.com
Flights from Zurich to Milan Linate via Paris CDG
Ave. Duration
4h 45m
When
Every day
Estimated price
95€ - 260€
Train operators
Swiss Railways (SBB/CFF/FFS)

The national railway company of Switzerland, Swiss Railways operates trains throughout the country and adjacent European nations including Germany, France, Italy and Austria. Tickets are sold in two classes - First and Second - with most long-distance trains offering a bistro car serving beverages and snacks. Individual tickets can be bought easily at stands, while a variety of travel passes are on offer to suit different travel needs.

Contact Details
Phone
+41 51 220 11 11
Website
sbb.ch
Train from Zuerich Hb to Milano Centrale
Ave. Duration
3h 40m
Frequency
Every 4 hours
Estimated price
70€ - 130€
Website
Swiss Railways (SBB/CFF/FFS)
Train from Zuerich Hb to Chiasso
Ave. Duration
2h 45m
Frequency
Hourly
Estimated price
60€ - 110€
Website
Swiss Railways (SBB/CFF/FFS)
Trenord

Trenord operates regional and suburban lines throughout Italy’s Lombardy region, including the Malapensa Express from Milan’s Malapensa Airport and local lines around Lake Como and the Italian Lakes. Trenord train tickets can be purchased from machines at any train station and don’t need to be booked in advance.

Contact Details
Phone
+39 02 7249 4494
Email
my-link@trenord.it
Website
trenord.it
Train from Chiasso to Milano Centrale
Ave. Duration
46 min
Frequency
Every 20 minutes
Estimated price
4€ - 6€
Website
Trenord
Train from Chiasso to Milano Porta Garibaldi
Ave. Duration
1h 8m
Frequency
Every 20 minutes
Estimated price
4€ - 6€
Website
Trenord
Bus operators
FlixBus

One of Europe’s leading bus companies, Flixbus serves 2000+ destinations in 29 countries, including Germany, France, Italy, Austria, the Netherlands and Croatia and into Scandinavia and eastern Europe, as well as some US cities. Coaches have toilets, free WiFi and power outlets, plus snacks and drinks for purchase on board. Flixbus is a good choice for the budget-conscious traveller; purchase tickets in advance for the cheapest fares (note: there is no option to reserve a seat in advance).

Rome2rio's guide to FlixBus
Contact Details
Phone
+49 1807 123 99 123
Email
info@flixbus.de
Website
flixbus.de
Bus from Zurich to Milan, Milan
Ave. Duration
3h 50m
Frequency
Every 4 hours
Estimated price
15€ - 19€
Website
flixbus.co.uk
Eurolines CH
Phone
0041 (0) 844 257 224
Website
eurolines.ch
Bus from Zürich to Milano Lampugnano
Ave. Duration
4h 25m
Frequency
Once daily
Estimated price
21€ - 30€
Book at
eurolines.ch
RegioJet
Phone
+420 542 42 42 42
Email
info@regiojet.cz
Website
regiojet.com
Bus from Zürich, Carparkplatz Sihlquai to Milan, Terminal Bus di Lampugnano
Ave. Duration
4h 25m
Frequency
Twice a week
Estimated price
8€ - 13€
Website
RegioJet
Marino Autolinee
Phone
+39 080 3112335
Email
info@marinobus.it
Website
marinobus.it
Bus from Zürich to Milan
Ave. Duration
4h 55m
Frequency
Once a week
Estimated price
18€
Website
Marino Autolinee
Gruppo Di Maio
Phone
+39 0827 34 117
Email
info@gruppodimaio.it
Website
gruppodimaio.it
Bus from Zürich to Como Grandate
Ave. Duration
5h 30m
Frequency
4 times a week
Estimated price
11€ - 17€
Schedules at
gruppodimaio.it
Other operators
BlaBlaCar

Blablacar is a popular ridesharing platform with 70 million users over 22 (mostly European) countries. The basic idea is that you carpool with locals who are already planning to drive your route and have space in their car. With some flexibility, you’ll get to your destination often faster and cheaper than other means. On the website or app, enter your departure and arrival points and your date of travel, sift through the profiles of drivers who’ve posted pre-planned drives and find one whose timing and preferences match yours. Request to join the ride, wait to be accepted, and pay your share of the set price.

Rome2rio's guide to BlaBlaCar
Contact Details
Website
blablacar.com
Rideshare from Zurich to Milan
Ave. Duration
3h 41m
Frequency
Twice daily
Estimated price
17€
Book at
blablacar.co.uk

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.

More Questions & Answers

The best way to get from Zürich to Milan is to train which takes 3h 40m and costs SFr 75 - SFr 140. Alternatively, you can bus, which costs SFr 10 - SFr 23 and takes 4h 16m, you could also fly, which costs SFr 75 - SFr 320 and takes 3h 3m.

Mode details

The quickest flight from Zurich Airport to Milan Malpensa Airport is the direct flight which takes 55 min.

Search flights

Zürich to Milan bus services, operated by FlixBus, arrive at Milan, Milan station.

More details

Zürich to Milan train services, operated by Swiss Railways (SBB/CFF/FFS), arrive at Milano Centrale station.

More details

Yes, the driving distance between Zürich to Milan is 288 km. It takes approximately 3h 13m to drive from Zürich to Milan.

Get driving directions

Swiss offers flights from Zurich Airport to Milan Malpensa Airport.

Search flights

Book your Zürich to Milan train tickets online with Omio.

Search and book

There are 4971+ hotels available in Milan. Prices start at 87€ per night.

More details

Check out Blablacar's carpooling service for rideshare options between Zürich and Milan. A great option if you don't have a driver's licence or want to avoid public transport.

Read Rome2rio's guide to Blablacar

The best way to get from Zürich to Zurich Airport is to train which takes 13 min and costs SFr 3 - SFr 20.

More details