
The trainshed at Milano Centrale, the 1931 terminus where EuroCity trains from Zurich arrive.
Photo: Daniel Case / Wikimedia Commons (CC BY-SA 3.0)Zurich to Milan by Train
An international route between Switzerland and Italy.
Reviewed by Eurotraintrip on 2026-07-30
- Duration
- 3h 12m – 3h 55m
- Price from
- 29 EUR
- Distance
- 254 km
- Operators
- SBBTrenitalia
- Frequency
- Around 10-11 direct EuroCity departures per day, roughly every 1-2 hours
Compare and book Zurich–Milan tickets
Check pricesWhat makes Zurich to Milan different
- The Gotthard Base Tunnel, the 57km world's-longest railway tunnel this route runs through, partially closed for over a year after a freight train derailment damaged one of its two bores in August 2023 - full normal EuroCity service through the tunnel only resumed in 2025, with trains rerouted over the older, slower mountain line in the meantime.
- Opened in 2016, the tunnel cuts the transit under the Alps to about 20 minutes at up to 250 km/h, shaving roughly an hour off the old route over the Gotthard Pass via Andermatt.
- The train stops at Bellinzona, whose three medieval castles (Castelgrande, Montebello and Sasso Corbaro) are a UNESCO World Heritage Site - visible from the train a few minutes before Lugano.
Zurich station
Departs from Zurich Hauptbahnhof (Zurich HB), Switzerland's largest and busiest station - around 3,000 trains a day across 26 tracks on two levels, linked underground to the ShopVille mall. No security screening for this cross-border service: you walk straight to the platform as on any Swiss train.
Milan station
Arrives at Milano Centrale, the vast 1931 terminus designed by Ulisse Stacchini, connected to Milan Metro lines M2 and M3 - the walk from the platforms to the metro concourse alone can take several minutes given the station's scale.
Train vs. other options
Flying Zurich-Milan takes under an hour in the air, but Milan's Malpensa airport sits over 45km outside the centre (Linate is closer but has fewer routes), so once transfer time is added, door-to-door time is often close to the roughly 3h15m Zurich HB-to-Milano Centrale train - and the train needs no airport check-in or security queue.
Booking tips
- Book SBB Supersaver or Trenitalia advance fares as early as possible - cross-border EuroCity fares climb fast as the departure date nears, and the cheapest advance tickets can be a fraction of the walk-up price.
- Compare booking directly through SBB and Trenitalia's own sites - as a jointly-operated EuroCity service, the same train and seat class can show different prices depending on which operator's platform you book through.
- Most direct EuroCity trains now run via the Gotthard Base Tunnel and skip the high alpine scenery - if you want the classic mountain route over the pass via Andermatt and Airolo instead of under it, you need to look for one of the slower panorama-route connections specifically.
Good to know: Because this is a joint SBB/Trenitalia EuroCity service, ticket prices for the same train and seat class can differ by several euros depending on whether you book via SBB's or Trenitalia's own site or app, and Swiss Half Fare/travelcard discounts only apply on the SBB side of the booking - worth checking both before paying.
Frequently asked questions
How long is the train from Zurich to Milan?
Direct EuroCity trains take around 3 hours 12-17 minutes. Services with more intermediate stops can take up to roughly 3 hours 55 minutes.
Does the Zurich-Milan train go through the Gotthard Base Tunnel?
Yes - most direct EuroCity trains use the 57km Gotthard Base Tunnel, the world's longest railway tunnel, crossing under the Alps in about 20 minutes.
How much does the train from Zurich to Milan cost?
Standard advance fares start from around 29 EUR in second class, though some booking platforms show promotional fares as low as roughly 15 EUR for early bookings.