Zurich to Milan by train

Last reviewed: July 2026

Typical duration
3h12m
Frequency
28 trains per day
Direct
Direct service (change in Lugano)
From price
tickets from €19.99

Stops

Train service

Train tickets

Omio

Omio connects you with over 1,000 transport providers - trains, buses, flights, and more - to simplify your travel planning.

Rail Europe

Rail Europe is a leading travel tech company specializing in European train bookings for over 15,000 travel professionals worldwide.

Trainline

Trainline sells rail and coach tickets worldwide on behalf of major UK and European transport companies.

Frequently asked questions

Is there a direct train from Zurich to Milan?

Yes. Direct EuroCity trains run throughout the day between Zurich HB and Milano Centrale, with no changes required. The fastest service completes the journey in approximately 3 hours 12 minutes.

How much do Zurich to Milan train tickets cost?

Advance tickets start from €19.99 when booked early. Second-class point-to-point fares typically range from CHF 25 to CHF 59. Last-minute purchases often exceed CHF 100 in 2nd class.

How many trains run daily from Zurich to Milan?

There are typically 10 to 28 services per day between Zurich and Milan, with roughly one direct departure every one to two hours.

Which operators run trains from Zurich to Milan?

SBB (Swiss Federal Railways) and Trenitalia jointly operate the EuroCity services. Modern SBB Giruno trains are used on most services, offering a bistro car, power sockets, and free Wi-Fi.

If I'm travelling from Zurich Airport, do I need a separate ticket for the airport connection?

No. When buying a ticket from Zurich Airport to Milano Centrale, the short S-Bahn leg from the airport to Zurich HB is included on one combined ticket.

More routes