The best prices from hundreds of train and bus companies

Join millions of people who use us every day

Travel to thousands of destinations in 45 countries

Zürich to Milan by train

It takes an average of 4h 58m to travel from Zürich to Milan by train, over a distance of around 135 miles (218 km). There are normally 23 trains per day travelling from Zürich to Milan and tickets for this journey start from $36.11 when you book in advance.
Journey timeFrom 3h 44m
Price$36.11 - $94.64
Distance135 miles (218 km)
Frequency23 trains per day
Departure stationZürich
Arrival stationMilan
Changes1 change
Train and bus operatorsRegiojet, Trenitalia, Flixbus, Calanda Viaggi (Bus), Marino

Zürich to Milan train times

Check out the next trains departing from Zürich to Milan for dinsdag mrt. 16de 2021. For the full train timetable/schedule, or to search for a later time or date, click here.
08:43 01:27 4h 44m, 1 change
09:20 01:27 4h 7m, 2 changes
09:25 01:55 4h 30m, 2 changes
09:55 02:55 5h 0m, 4 changes
10:15 02:55 4h 40m, 5 changes
11:43 03:27 3h 44m, 1 change
00:43 04:55 4h 12m, 2 changes
01:43 05:27 3h 44m, 1 change
02:43 06:27 3h 44m, 1 change
03:43 07:27 3h 44m, 1 change

Trenitalia trains from Zürich to Milan

You can travel from Zürich to Milan on Trenitalia trains. When you search for times and tickets, we might also show you some other options with multiple connections or operators if they’re available.

Trenitalia is the national railway company of Italy, with a fleet including high-speed trains (Frecciarossa, Frecciargento and Frecciabianca), Intercity and Intercity night trains and regional trains. Trenitalia offers discounts and special promotions on selected routes, two types of discounted tickets for young people under 30 and people over 60.

Cheap train tickets from Zürich to Milan

The price of train tickets from Zürich to Milan starts at $36.11 one-way for a Standard Class ticket if you book in advance. Booking on the day is usually more expensive and costs can vary depending on the time of day, route or class.
lowest price found
4 weeksin advance
avg. single price$69.10
2 weeksin advance
avg. single price$74.61
on the day
avg. single price$94.48

Book in advance

Most of the train companies across Europe release their tickets around three to six months in advance, many of which can be cheaper the earlier you book. If you know the dates you want to travel, you may be able to find some cheaper train tickets from Zürich to Milan by booking early.§

Be flexible with your travel times

Many of the train services in Europe are also popular commuter services, lots of train companies increase ticket prices during “peak hours” (generally between 06:00 – 10:00 and 15:00 – 19:00 on weekdays). If you can, consider travelling outside of peak hours to find lower priced tickets.

Choose a slower or connecting train

On some of the busier routes, you might also have the option to take a slower or connecting train. It may take a little longer than some high-speed or direct services, but if you have a little extra time on your hands, you might find a cheaper fare. Plus, you'll have more time to enjoy the view of the countryside!

Look out for special deals

Take a look at our handy guides to find out when train operators release their special deals and offers to see if you can find cheap European train tickets for your journey.

For specific information about how to get your hands on cheap tickets, check out our European train tickets hub.

§Some train companies may not offer any Advance ticket types or cheaper deals for early bookings. On rare occasions, train companies may choose to release special offers closer to the date on last-minute or late-release tickets. This is dependent on the individual train operating company you travel with.

FAQs for Zürich to Milan

Want to know more about your journey from Zürich to Milan? We've compiled some of the most frequently asked questions by our customers to help you plan your journey.

How long does the train from Zürich to Milan take?

The average journey time by train between Zürich and Milan is 4 hours and 58 minutes, with around 23 trains per day. The journey time may be longer on weekends and holidays, so use our Journey Planner on this page to search for a specific travel date.

What's the fastest journey time between Zürich and Milan by train?

The fastest journey time by train from Zürich to Milan is 3 hours and 44 minutes.

How much does the train from Zürich to Milan cost?

Train tickets from Zürich to Milan can start from as little as $36.11 when you book in advance and are usually more expensive when purchased on the day. Prices can also vary depending the time of day, route and class you book.

Is there a direct train from Zürich to Milan?

No, there are no direct train services from Zürich to Milan. Travelling from Zürich to Milan by train will require a minimum of 1 change.

What time does the first train from Zürich to Milan leave?

The first train from Zürich to Milan leaves at 11:43. Times and services may vary during weekends and holidays.

What time does the last train from Zürich to Milan leave?

The last train from Zürich to Milan leaves at 10:15. Trains that depart in the early morning hours or very late evening may be sleeper services, time and services may also vary during weekends and holidays.

What's the distance between Zürich and Milan by train?

Trains travelling from Zürich to Milan cover a distance of around 135 miles (218 km) during the journey.

Looking for more information?

If you’re looking for the return train journey, check out trains from Milan to Zürich.
The information provided is calculated based on scheduled train services for Zürich to Milan for a typical week day using timetable data for 03/16/2021. On weekends, holidays or other exceptional times, fewer services may be available. The fare range provided has been found by our customers on Trainline on 03/01/2021 for travel on 11/05/2020 and for adult tickets in economy, discount cards and coach journeys excluded.

Europe’s leading train and coach app

We help customers across Europe make more than 172,000 smarter journeys every day.