COVID-19 Travel restrictions may apply upon entering Italy. Learn More.

There are 7 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 17m

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

70€ - 130€

Cheapest option

Bus  •  4h 8m

  1. Take the bus from Zurich Bus Station to Milan N524 / ...

10€ - 20€

5 alternative options

Train via Lugano  •  3h 34m

  1. Take the train from Zuerich Hb to Lugano Ec / ...
  2. Take the train from Lugano to Milano Centrale Re / ...

72€ - 127€

Bus via Como  •  5h 55m

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

14€ - 20€

Rideshare  •  3h 41m

  1. Take the rideshare from Zurich to Milan 279.7 km

17€

Drive  •  3h 6m

  1. Drive from Zürich to Milan 280 km

30€ - 50€

Fly  •  5h 43m

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

59€ - 339€

Switzerland → Italy
Partially open

Travel safe during COVID-19

International entry into Italy from Switzerland

  • Entry is partially open for citizens and permanent residents of Switzerland
Show more details
Allowed for: Citizens and permanent residents of Italy, as well as residents from EU Schengen Area (EU countries, Iceland, Liechtenstein, Norway, and Switzerland), Andorra, Monaco, San Marino, Vatican, Cyprus, Australia, New Zealand, South Korea, Rwanda, Singapore, Thailand, Israel and United Kingdom

Restricted for: Foreign nationals from outside EU Schengen Area with the above exceptions. Brazil, India, Bangladesh and Sri Lanka are also restricted

Show less

Conditions of entry into Italy from Switzerland

  • Negative COVID-19 test issued at most 2 days before arrival and 5 day mandatory self quarantine
  • A negative result for COVID-19 is a condition to end the quarantine obligation earlier. It is tested in quarantine on day 5
  • Health declaration required
This applies to arrivals from Switzerland
Show more details
  • 10-day mandatory quarantine and a negative COVID-19 test issued at most 2 days before arrival
This applies to arrivals from Australia, New Zealand, Rwanda, South Korea, Singapore and Thailand
  • Negative COVID-19 test issued at most 2 days before arrival and 5 day mandatory self quarantine
  • A negative result for COVID-19 is a condition to end the quarantine obligation earlier. It is tested in quarantine on day 5
This applies to arrivals from Austria, Belgium, Bulgaria, Cyprus, Croatia, Denmark, Estonia, Finland, France, Germany, Greece, Ireland, Israel, Latvia, Lithuania, Luxembourg, Malta, Netherlands, Poland, Portugal, United Kingdom, Czech Republic, Romania, Slovakia, Slovenia, Spain, Sweden, Hungary, Iceland, Norway, Liechtenstein, Switzerland, Andorra and Monaco
  • Health declaration required
This doesn’t apply to citizens and permanent residents of San Marino and Vatican
  • 10 day mandatory monitored quarantine
This applies to arrivals from India, Bangladesh and Sri Lanka

Show less

Rules to follow in Italy

1m

Mandatory

Considerations leaving from Switzerland

The official advice is to avoid non-essential international travel to high risk countries

Frequently Asked Questions


Yes, but conditions apply when entering Italy from Switzerland.

Explore options for future travel

Domestic travel is not restricted, but some conditions may apply

  • Face masks are mandatory
  • There is a social distancing requirement of 1 metre
  • Observe COVID-19 safety rules
  • Regional restriction measures in place
  • Domestic border crossings may be subject to approval, testing and quarantine
  • Nationwide control measures in place

Explore travel options

The national COVID-19 helpline number in Milan is 1500.

Wearing a face mask on public transport in Milan is mandatory.

The social distance requirement in Milan is 1 metre.

Make yourself known to an official member of staff and/or call the national coronavirus helpline number on 1500.

No, but conditions apply when returning to Switzerland from Italy.

See options for return travel.

Last updated: 4 May 2021
Exceptions may apply, for full details: European Union.

We're working around the clock to bring you the latest COVID-19 travel updates.
This information is compiled from official sources. To the best of our knowledge, it is correct as of the last update.
Visit Rome2rio travel advice for general help.

Questions & Answers

The cost-effective way to get from Zürich to Milan is to rideshare, which costs SFr 19 and takes 3h 41m.

More details

The quickest way to get from Zürich to Milan is to drive which costs SFr 35 - SFr 55 and takes 3h 6m.

More details

No, there is no direct bus from Zürich station to Milan. However, there are services departing from Zurich Bus Station and arriving at via bazzoni, 14 prima di p.za conciliazione via via natta dopo via trenno. The journey, including transfers, takes approximately 4h 8m.

More details

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

More details

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

Get driving directions

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

More details

The train from Zuerich Hb to Milano Centrale takes 3h 17m including transfers and departs once daily.

More details

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

More details

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

More details

The best way to get from Zürich to Milan is to train which takes 3h 17m and costs SFr 75 - SFr 140. Alternatively, you can bus, which costs SFr 10 - SFr 23 and takes 4h 8m, you could also fly, which costs SFr 65 - SFr 380 and takes 5h 43m.

Mode details

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

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 once daily. Tickets cost 70€ - 130€ and the journey takes 3h 17m. Alternatively, FlixBus operates a bus from Zurich Bus Station to Milan twice daily. Tickets cost 15€ - 19€ and the journey takes 3h 40m. RegioJet also services this route twice a week.

Airlines
Lufthansa
Website
lufthansa.com
Flights from Zurich to Milan Linate via Frankfurt
Ave. Duration
3h 20m
When
Every day
Estimated price
190€ - 700€
Alitalia
Website
alitalia.com
Flights from Zurich to Milan Linate via Rome
Ave. Duration
3h 40m
When
Every day
Estimated price
50€ - 380€
KLM
Website
klm.com
Flights from Zurich to Milan Linate via Amsterdam Schiphol
Ave. Duration
5h 25m
When
Every day
Estimated price
95€ - 290€
Brussels Airlines
Website
brusselsairlines.com
Flights from Zurich to Milan Linate via Brussels
Ave. Duration
3h 55m
When
Monday, Tuesday and Saturday
Estimated price
45€ - 290€
Iberia
Website
iberia.com
Flights from Zurich to Milan Linate via Madrid
Ave. Duration
7h 10m
When
Tuesday
Estimated price
85€ - 800€
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 17m
Frequency
Once daily
Estimated price
70€ - 130€
Website
Swiss Railways (SBB/CFF/FFS)
Train from Zuerich Hb to Lugano
Ave. Duration
1h 57m
Frequency
Hourly
Estimated price
50€ - 95€
Website
Swiss Railways (SBB/CFF/FFS)
Train from Lugano to Milano Centrale
Ave. Duration
1h 15m
Frequency
Hourly
Estimated price
19€ - 35€
Website
Swiss Railways (SBB/CFF/FFS)
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 Bus Station to Milan
Ave. Duration
3h 40m
Frequency
Twice daily
Estimated price
15€ - 19€
Website
flixbus.co.uk
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€ - 12€
Website
RegioJet
Gruppo Di Maio
Phone
+39 0827 34 117
Email
info@gruppodimaio.it
Website
gruppodimaio.it
Bus from Zürich to Como Grandate
Ave. Duration
4h 45m
Frequency
6 times a week
Estimated price
11€ - 16€
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

There is no direct flight from Zurich Airport to Milan Linate Airport. The quickest flight takes 3h 10m and has one stopover.

Search flights

Zürich to Milan bus services, operated by FlixBus, arrive at 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 280 km. It takes approximately 3h 6m to drive from Zürich to Milan.

Get driving directions

Brussels Airlines, Swiss, Iberia and three other airlines offer flights from Zurich Airport to Milan Linate Airport.

Search flights

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

Search and book

There are 4305+ hotels available in Milan. Prices start at 75€ 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