The average train between Zurich and Lombardy takes 4h 12m and the fastest train takes 3h 22m. There is a train service every few hours from Zurich to Lombardy. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Trains run hourly between Zurich and Lombardy. The earliest departure is at 6:33 AM in the morning, and the last departure from Zurich is at 11:05 PM which arrives into Lombardy at 7:29 AM. All services require a transfer at Lugano and take an average of 4h 12m. The schedules shown below are for the next available departures.


3h 48m • 2 changes


4h 6m • 2 changes


3h 54m • 2 changes


4h • 2 changes


3h 48m • 2 changes


4h 6m • 2 changes


3h 54m • 2 changes


4h • 2 changes


3h 47m • 2 changes


4h 4m • 2 changes


3h 53m • 2 changes


4h 3m • 2 changes


3h 52m • 2 changes


4h 9m • 2 changes


3h 55m • 2 changes


4h 4m • 2 changes
Want to know about travelling from Zurich to Lombardy? We have put together a list of the most frequently asked questions from our users such as: What is the cheapest mode of transport? What is the quickest option? How much do tickets usually cost? and many more.
No, there is no direct train from Zurich to Lombardy. However, there are services departing from Zurich station and arriving at Lombardy station via Lugano. The journey, including transfers, takes approximately 4h 12m.
Zurich to Lombardy train services, operated by Swiss Federal Railways (SBB CFF FFS), depart from Zürich HB station.
Zurich to Lombardy train services, operated by Swiss Federal Railways (SBB CFF FFS), arrive at Milano Centrale station.
The distance between Zurich and Lombardy is 220.6 km. The road distance is 256 km.
You can take a train from Zürich HB to Duomo M3 via Lugano, Milano Centrale, and Centrale Fs in around 4h 7m.