There are 9 ways to get from Milan to Zagreb by plane, shuttle, bus, train, night bus, night train or car

Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2rio's travel planner.

Recommended option

Fly Milan Malpensa to Zagreb  •  4 h 30 min

  1. MXP - ZAG

$112 - $366

Cheapest option

Night bus  •  11 h 14 min

  1. N402

$37 - $67

7 alternative options

Fly Milan Linate to Zagreb  •  6 h 39 min

  1. LIN - ZAG

$116 - $422

Fly Milan Linate to Trieste, shuttle  •  6 h 24 min

  1. LIN - TRS

$147 - $772

Bus  •  9 h 35 min

$42 - $67

Train, bus  •  9 h 44 min

  1. Fr
  2. Rv / ...
  3. 402

$58 - $162

Train  •  11 h 15 min

  1. Fr
  2. Rj / ...
  3. Ec / ...

$75 - $143

Night train, train  •  12 h 51 min

  1. En / ...
  2. Ec / ...

$58 - $112

Drive  •  6 h 1 min

  1. 396.8 miles

$95 - $140

What companies run services between Milan, Italy and Zagreb, Croatia?

Croatia Airlines, Lufthansa and three other airlines fly from Milan to Zagreb every 4 hours. Alternatively, Globtour operates a bus from Milan to Zagreb twice daily. Tickets cost $40 - $65 and the journey takes 8 h 15 min. Arriva d.o.o. also services this route once a week.

Airlines
Lufthansa
Website
lufthansa.com
Flights from Milan Malpensa to Zagreb via Munich
Ave. Duration
3 h 30 min
When
Every day
Estimated price
$200 - $750
Flights from Milan Malpensa to Zagreb via Frankfurt
Ave. Duration
3 h 50 min
When
Every day
Estimated price
$210 - $700
Flights from Milan Linate to Zagreb via Frankfurt
Ave. Duration
4 h 48 min
When
Every day
Estimated price
$280 - $900
Flights from Milan Linate to Zagreb via Frankfurt, Munich
Ave. Duration
5 h 57 min
When
Every day
Estimated price
$230 - $700
Austrian Airlines
Website
austrian.com
Flights from Milan Malpensa to Zagreb via Vienna
Ave. Duration
3 h 37 min
When
Every day
Estimated price
$210 - $700
Air France
Website
airfrance.com
Flights from Milan Linate to Zagreb via Paris CDG
Ave. Duration
4 h 35 min
When
Every day
Estimated price
$220 - $700
Flights from Milan Linate to Trieste
Ave. Duration
55 min
When
Monday, Tuesday, Wednesday, Thursday, Friday and Sunday
Estimated price
$85 - $350
Alitalia
Website
alitalia.com
Flights from Milan Linate to Trieste
Ave. Duration
55 min
When
Every day
Estimated price
$85 - $350
Croatia Airlines
Website
croatiaairlines.com
Flights from Milan Malpensa to Zagreb
Ave. Duration
1 h 30 min
When
Tuesday, Friday and Sunday
Estimated price
$170 - $850
Swiss
Website
swiss.com
Flights from Milan Malpensa to Zagreb via Zurich
Ave. Duration
3 h 30 min
When
Every day
Estimated price
$170 - $850
KLM
Website
klm.com
Flights from Milan Linate to Zagreb via Amsterdam
Ave. Duration
6 h 5 min
When
Saturday
Estimated price
$250 - $900
Brussels Airlines
Website
brusselsairlines.com
Flights from Milan Linate to Zagreb via Brussels
Ave. Duration
5 h 5 min
When
Monday to Friday
Estimated price
$380 - $1,300
Train operators
Trenitalia
Phone
+39 06 68475475
Website
trenitalia.com
Train from Venezia Mestre to Trieste Centrale
Ave. Duration
1 h 53 min
Frequency
Hourly
Estimated price
$11 - $24
Website
orario.trenitalia.com
1st Class
$20 - $24
Train from Venezia Mestre to Villach Hbf
Ave. Duration
3 h 4 min
Frequency
3 times a day
Estimated price
$20 - $45
Website
orario.trenitalia.com
Night train from Milano Lambrate to Villach Hbf
Ave. Duration
6 h 17 min
Frequency
3 times a day
Estimated price
$35 - $75
Website
orario.trenitalia.com
1st Class
$60 - $75
Trenitalia Eurocity
Phone
+39 06 68475475
Website
trenitalia.com
Train from Venezia Mestre to Villach Hbf
Ave. Duration
3 h 4 min
Frequency
Twice daily
Estimated price
$40 - $60
Website
orario.trenitalia.com
Austrian Railways (ÖBB)
Website
oebb.at
Train from Villach Hbf to Zagreb Glavni Kolod.
Ave. Duration
3 h 58 min
Frequency
4 times a day
Estimated price
$21 - $35
Website
fahrplan.oebb.at
Purchase an
eurail.com
Bus operators
Globtour
Website
globtour.com
Bus from Mailand Lampugnano to Zagreb Zob
Ave. Duration
8 h 15 min
Frequency
Twice daily
Estimated price
$40 - $65
Schedules at
globtour.com
Bus from Trieste Zob to Zagreb Zob
Ave. Duration
4 h
Frequency
Twice daily
Estimated price
$15 - $23
Schedules at
globtour.com
Arriva d.o.o.
Phone
+385 (0)72 660 660
Email
info@arriva.com.hr
Website
arriva.com.hr
Bus from Lampugnano to Zagreb
Ave. Duration
9 h 36 min
Frequency
Once a week
Schedules at
arriva.com.hr
Bus from Trieste to Zagreb
Ave. Duration
4 h 20 min
Frequency
Once daily
Schedules at
arriva.com.hr
Florentia Bus
Phone
+39 055 967024
Email
info@florentiabus.it
Website
florentiabus.it
Bus from Trieste to Zagreb
Ave. Duration
3 h 41 min
Frequency
Once daily
Estimated price
$65 - $90
Schedules at
florentiabus.it
Crnja Tours
Phone
+385 91 30 30 356
Email
info@crnja-tours.hr
Website
crnja-tours.hr
Bus from Trieste to Zagreb
Ave. Duration
3 h 47 min
Frequency
Once daily
Estimated price
$17 - $25
Schedules at
crnja-tours.hr
Book at
crnja.getbybus.com
FlixBus
Phone
+49 1807 123 99 123
Email
info@flixbus.de
Website
flixbus.de
Bus from Trieste to Zagreb
Ave. Duration
4 h
Frequency
Once daily
Estimated price
$13 - $23
Website
flixbus.co.uk
Night bus from Milan, Milan to Zagreb
Ave. Duration
10 h
Frequency
Once daily
Estimated price
$35 - $65
Website
flixbus.co.uk

Want to know more about travelling around Croatia

Rome2rio's Travel Guide series provide vital information for the global traveller. Filled with useful and timely travel information, the guides answer all the hard questions - such as 'How do I buy a ticket?', 'Should I book online before I travel? ', 'How much should I expect to pay?', 'Do the trains and buses have Wifi?' - to help you get the most out of your next trip.

Questions & Answers

The distance between Milan and Zagreb is 529 km. The road distance is 635 km.

The cheapest way to get from Milan to Zagreb is to bus which costs 35€ - 60€ and takes 9 h 35 min.

The quickest way to get from Milan to Zagreb is to fly which takes 4 h 30 min and costs 95€ - 320€.

No, there is no direct train from Milan to Zagreb. However, there are services departing from Milano Centrale and arriving at Zagreb Glavni Kolod. via Venezia Mestre and Villach Hbf. The journey, including transfers, takes approximately 11 h 15 min.

No, there is no direct bus from Milan to Zagreb. However, there are services departing from via orefici p.za cordusio and arriving at Zagreb Zob via Mailand Lampugnano. The journey, including transfers, takes approximately 9 h 35 min.

It takes approximately 4 h 30 min to get from Milan to Zagreb, including transfers.