Read real reviews from real users
If you want to travel from Zagreb to Milan by train, you've come to the right place.
You can expect the journey from Zagreb to Milan by train to take around 15 hours 12 minutes. If you want to get there as quickly as possible, it can take as little as 12 hours 52 minutes on the fastest services. You'll usually find around 6 trains per day running on this route, which spans 529 km. You'll have to make 1 change along the way on your journey to Milan.
Use our Journey Planner at the top of the page to search for cheap ticket prices and we'll show you how much you can save. Tickets from Zagreb to Milan start from $219.01 when you book in advance.
If you want to know more about the journey, keep reading for train schedules, tips on finding cheap tickets and FAQs, including first and last train times. Want to go straight to booking? Start a search with us today!
| First train | 7:05 am | |
|---|---|---|
| Last train | 8:37 pm | |
| Departure station | Zagreb | |
| Arrival station | Milan | |
| Journey time | From 12h 52m | |
| Distance | 329 miles (529 km) | |
| Frequency | 6 trains per day | |
| Changes | 1 change | |
| Price | From $219.01 | |
| Train and bus operators | BlaBlaCar Bus, Flixbus, Itabus |
For specific information about how to get your hands on cheap tickets, check out our European train tickets hub.