There are 10 ways to get from Milan to Zagreb by plane, shuttle, train, ferry, 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  •  4h 49m

  1. Fly from Milan Malpensa (MXP) to Zagreb (ZAG) MXP - ZAG

764 kn - 1.449 kn

Cheapest option

Fly Milan Bergamo to Zagreb  •  8h 2m

  1. Fly from Milan Bergamo (BGY) to Zagreb (ZAG) BGY - ZAG

208 kn - 1.009 kn

8 alternative options

Fly Milan Linate to Zagreb  •  6h 45m

  1. Fly from Milan Linate (LIN) to Zagreb (ZAG) LIN - ZAG

740 kn - 1.949 kn

Fly Milan Linate to Trieste, shuttle  •  6h 16m

  1. Fly from Milan Linate (LIN) to Trieste (TRS) LIN - TRS
  2. Take a shuttle bus from Trieste Airport to Ljubljana
  3. Take a shuttle bus from Ljubljana to Zagreb

700 kn - 6.714 kn

Train, line 2 ferry, bus  •  8h 32m

  1. Take the train from Milano Centrale to Venezia Santa Lucia Fr / ...
  2. Take the line 2 ferry from P.le Roma "G" to Tronchetto Mercato 2 / ...
  3. Take the bus from Venezia - Tronchetto to Zagreb

Bus  •  11h 4m

  1. Take the bus from Milano - Lampugnano to Zagreb 26

250 kn - 354 kn

Train, night train  •  11h 39m

  1. Take the train from Milano Centrale to Venezia Mestre Fr / ...
  2. Take the train from Venezia Mestre to Villach Hbf Rj
  3. Take the night train from Villach Hbf to Zagreb Glavni Kol. En

674 kn - 1.264 kn

Bus via Umag  •  13h 31m

  1. Take the bus from Milan to Umag International
  2. Take the bus from Umag Crodux Gas Station to Zagreb Central Bus Station Umag Crodux Gas Station - Zagreb Central Bus Station

501 kn - 681 kn

Night train  •  11h 18m

  1. Take the night train from Milano P.Garibaldi to Villach Hbf Nj / ...
  2. Take the night train from Villach Hbf to Zagreb Glavni Kol. En

509 kn - 1.988 kn

Drive  •  5h 59m

  1. Drive from Milan to Zagreb 625.4 km

600 kn - 950 kn

Coronavirus (COVID-19) in Croatia

There is widespread community transmission globally.
Some travel restrictions are being lifted in Croatia. For the latest travel status, please check the official page for Croatia.

For travel planning advice, please refer to our Rome2rio Coronavirus information page .
For the latest travel status, we recommend checking the official page for Croatia.

Coronavirus (COVID-19) Travel Advice

Some border closures are in place for Croatia due to Coronavirus (COVID-19). Most travel to this country is restricted.

Source Type: Government | Last updated: 3/20/2020

Some domestic travel restrictions began to ease in Croatia from 5/11/2020.

Source Type: Government | Last updated: 5/3/2020

International flights leaving Italy are suspended as part of the response to Coronavirus (COVID-19). Restrictions may also be in place for other modes of transport.

Source Type: Government | Last updated: 4/18/2020

Data sourced from: CDC, ACAPS, OXFORD

Questions & Answers

The cheapest way to get from Milan to Zagreb is to bus which costs 30€ - 50€ and takes 11h 4m.

More details

The quickest way to get from Milan to Zagreb is to fly which costs 100€ - 200€ and takes 4h 49m.

More details

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 via Milano - Lampugnano. The journey, including transfers, takes approximately 11h 4m.

More details

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

More details

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

Get driving directions

The best way to get from Milan to Zagreb without a car is to train and line 2 ferry and bus which takes 8h 32m and costs .

More details

It takes approximately 4h 49m to get from Milan to Zagreb, including transfers.

More details

Milan to Zagreb bus services, operated by Eurolines FR, depart from Milano - Lampugnano station.

More details

Milan to Zagreb train services, operated by Trenitalia Frecce, depart from Milano Centrale station.

More details

The best way to get from Milan to Zagreb is to fly which takes 4h 49m and costs 100€ - 200€. Alternatively, you can bus, which costs 30€ - 50€ and takes 11h 4m.

Mode details

Map of how to get from Milan to Zagreb.
Launch map view
  • Distance: 529 km
  • Duration: 4h 49m

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

Croatia Airlines, Austrian Airlines and two other airlines fly from Milan to Zagreb 5 times a day. Alternatively, Eurolines FR operates a bus from Milano - Lampugnano to Zagreb twice a week. Tickets cost 240 kn - 340 kn and the journey takes 9h 45m.

Airlines
Lufthansa
Website
lufthansa.com
Flights from Milan Malpensa to Zagreb via Frankfurt
Ave. Duration
3h 30m
When
Every day
Estimated price
1.200 kn - 2.300 kn
Flights from Milan Linate to Zagreb via Frankfurt
Ave. Duration
4h 53m
When
Every day
Estimated price
1.300 kn - 4.900 kn
Flights from Milan Linate to Zagreb via Frankfurt, Munich
Ave. Duration
6h
When
Every day
Estimated price
1.600 kn - 6.000 kn
Flights from Milan Bergamo to Zagreb via Frankfurt
Ave. Duration
6h 10m
When
Every day
Estimated price
850 kn - 2.700 kn
Flights from Milan Bergamo to Zagreb via Prague, Munich
Ave. Duration
6h 5m
When
Monday, Tuesday, Thursday, Friday and Saturday
Estimated price
230 kn - 1.200 kn
Flights from Milan Bergamo to Zagreb via Bremen, Munich
Ave. Duration
6h 15m
When
Wednesday and Sunday
Estimated price
290 kn - 1.400 kn
Flights from Milan Bergamo to Zagreb via Katowice, Munich
Ave. Duration
7h 10m
When
Tuesday, Thursday and Saturday
Estimated price
250 kn - 1.500 kn
Flights from Milan Bergamo to Zagreb via Dusseldorf, Munich
Ave. Duration
8h 20m
When
Wednesday
Estimated price
240 kn - 1.200 kn
Croatia Airlines
Website
croatiaairlines.com
Flights from Milan Malpensa to Zagreb
Ave. Duration
1h 30m
When
Tuesday, Friday and Sunday
Estimated price
1.130 kn - 1.170 kn
Flights from Milan Bergamo to Zagreb via Barcelona
Ave. Duration
4h 30m
When
Tuesday, Thursday, Saturday and Sunday
Estimated price
1.200 kn - 3.800 kn
Flights from Milan Bergamo to Zagreb via Vienna
Ave. Duration
6h 10m
When
Every day
Estimated price
140 kn - 900 kn
Flights from Milan Bergamo to Zagreb via Frankfurt
Ave. Duration
6h 10m
When
Every day
Estimated price
850 kn - 2.700 kn
Flights from Milan Bergamo to Zagreb via Bucharest Otopeni
Ave. Duration
6h 40m
When
Monday, Wednesday and Friday
Estimated price
330 kn - 1.500 kn
Flights from Milan Bergamo to Zagreb via Copenhagen
Ave. Duration
6h 50m
When
Every day
Estimated price
350 kn - 1.500 kn
Flights from Milan Bergamo to Zagreb via Dublin
Ave. Duration
7h 20m
When
Tuesday
Estimated price
1.800 kn - 6.000 kn
Flights from Milan Bergamo to Zagreb via Prague, Vienna
Ave. Duration
6h
When
Wednesday
Estimated price
210 kn - 1.100 kn
Flights from Milan Bergamo to Zagreb via Rome, Split
Ave. Duration
6h
When
Every day
Estimated price
500 kn - 2.200 kn
Austrian Airlines
Website
austrian.com
Flights from Milan Malpensa to Zagreb via Vienna
Ave. Duration
3h 35m
When
Every day
Estimated price
1.600 kn - 3.400 kn
Flights from Milan Bergamo to Zagreb via Vienna
Ave. Duration
6h 10m
When
Every day
Estimated price
140 kn - 900 kn
Flights from Milan Bergamo to Zagreb via Budapest, Vienna
Ave. Duration
5h 5m
When
Monday
Estimated price
220 kn - 1.100 kn
Flights from Milan Bergamo to Zagreb via Prague, Vienna
Ave. Duration
6h
When
Wednesday
Estimated price
210 kn - 1.100 kn
Flights from Milan Bergamo to Zagreb via Rome, Split
Ave. Duration
6h
When
Every day
Estimated price
500 kn - 2.200 kn
Alitalia
Website
alitalia.com
Flights from Milan Linate to Trieste
Ave. Duration
55 min
When
Every day
Estimated price
250 kn - 3.300 kn
Flights from Milan Bergamo to Zagreb via Rome, Split
Ave. Duration
9h 30m
When
Monday, Tuesday, Wednesday, Thursday, Friday and Sunday
Estimated price
500 kn - 2.200 kn
Swiss
Website
swiss.com
Flights from Milan Malpensa to Zagreb via Zurich
Ave. Duration
3h 20m
When
Every day
Estimated price
1.130 kn - 1.170 kn
British Airways
Website
britishairways.com
Flights from Milan Linate to Zagreb via London Heathrow
Ave. Duration
5h 45m
When
Tuesday, Wednesday, Thursday and Saturday
Estimated price
1.900 kn - 5.500 kn
KLM
Website
klm.com
Flights from Milan Linate to Zagreb via Amsterdam Schiphol
Ave. Duration
6h 5m
When
Saturday
Estimated price
1.400 kn - 3.700 kn
Brussels Airlines
Website
brusselsairlines.com
Flights from Milan Linate to Zagreb via Brussels
Ave. Duration
4h 30m
When
Monday to Friday
Estimated price
1.000 kn - 3.200 kn
Eurowings
Website
eurowings.com
Flights from Milan Bergamo to Zagreb via Cologne Bonn
Ave. Duration
6h 25m
When
Thursday
Estimated price
550 kn - 2.000 kn
Train operators
ItaloTreno

Private train company Italotreno operates high-speed trains in Italy on the same tracks as Trenitalia. The routes service 21 stations across the country, including popular routes Milan-Florence, Rome-Venice and Bologna-Naples. Choose from four classes of service, all with free Wi-Fi: Smart, Comfort, Prima and Club Executive. Italo also operates Italobus – an integrated train-bus service that takes passengers from the main train stations to other Italian cities.

Contact Details
Phone
+39 060708
Website
italotreno.it
Train from Milano Centrale to Venezia Santa Lucia
Ave. Duration
2h 28m
Frequency
Every 4 hours
Estimated price
140 kn - 420 kn
Website
Italo Treno
Smart Economy
160 kn - 230 kn
Smart Low Cost
140 kn - 210 kn
Smart Flex
300 kn - 420 kn
Train from Milano Centrale to Venezia Mestre
Ave. Duration
2h 17m
Frequency
Every 4 hours
Estimated price
140 kn - 410 kn
Website
Italo Treno
Smart Economy
160 kn - 220 kn
Smart Low Cost
140 kn - 200 kn
Smart Flex
300 kn - 410 kn
Trenitalia Frecce

Trenitalia’s high-speed Frecce trains run on specialised tracks and have a greater level of service and comfort than InterCity and regional trains. There are three types of Frecce trains: Frecciarossa, (the fastest; connects major Italian cities); Frecciargento (mostly connect Rome to other Italian cities); and Frecciabianca (the slowest Frecce trains). Frecciarossa trains offer four classes of service, all with free Wi-Fi: Standard, Premium, Business and Executive. All Frecce tickets include a seat reservation and must be purchased before boarding the train.

Contact Details
Phone
+39 06 68475475
Website
trenitalia.com
Train from Milano Centrale to Venezia S. Lucia
Ave. Duration
2h 27m
Frequency
3 times a day
Estimated price
160 kn - 550 kn
Website
Trenitalia Frecce
Super Economy
160 kn - 230 kn
Base Standard
320 kn - 420 kn
Base Premium
390 kn - 550 kn
Train from Milano Centrale to Venezia Mestre
Ave. Duration
2h 15m
Frequency
5 times a day
Estimated price
160 kn - 550 kn
Website
Trenitalia Frecce
Super Economy
160 kn - 220 kn
Base Standard
310 kn - 420 kn
Base Premium
380 kn - 550 kn
Swiss Railways (SBB/CFF/FFS)

The national railway company of Switzerland, Swiss Railways operates trains throughout the country and adjacent European nations including Germany, France, Italy and Austria. Tickets are sold in two classes - First and Second - with most long-distance trains offering a bistro car serving beverages and snacks. Individual tickets can be bought easily at stands, while a variety of travel passes are on offer to suit different travel needs.

Contact Details
Phone
+41 51 220 11 11
Website
sbb.ch
Train from Milano Centrale to Venezia S. Lucia
Ave. Duration
2h 37m
Frequency
Twice daily
Estimated price
550 kn - 1.100 kn
Website
Swiss Railways (SBB/CFF/FFS)
Train from Milano Centrale to Venezia Mestre
Ave. Duration
2h 25m
Frequency
Twice daily
Estimated price
550 kn - 1.000 kn
Website
Swiss Railways (SBB/CFF/FFS)
Austrian Railways (ÖBB)

Austria's national railway system is not only punctual, reliable and efficient, but offers free wifi to boot. Choose from high-speed intercity Railjet trains, overnight Nightjet trains and regional services such as Cityjet. ÖBB also operates international routes that connect cities in Austria with adjacent European countries including Germany, Hungary, Liechtenstein, Czech Republic, Switzerland and Slovenia. If you're planning to be in Austria for a while, consider the ÖBB Vorteilscard, an annual railcard that offers discounts on routes within Austria and in neighbouring countries.

Contact Details
Phone
05 17 17
Website
oebb.at
Train from Venezia Mestre to Villach Hbf
Ave. Duration
3h 3m
Frequency
Twice daily
Estimated price
320 kn - 430 kn
Website
Austrian Railways
Book at
Austria Rail Pass
Nightjet
Phone
+43 51717
Website
nightjet.com
Night train from Milano P.Garibaldi to Villach Hbf
Ave. Duration
5h 57m
Frequency
Twice daily
Estimated price
290 kn - 390 kn
Website
Nightjet
Trenitalia Eurocity

The primary train operator in Italy, Trenitalia was created in the year 2000. Trenitalia offers national rail connections in Italy as well as international connections to Austria, France, Germany and Switzerland. The company operates regional and long-distance trains, as well as high-speed trains called Frecce that travel on specialised tracks on speeds of up to 360km/h. Trenitalia tickets are available online, in stations across the country or from many travel agents that offer bookings.

Contact Details
Phone
+39 06 68475475
Website
trenitalia.com
Night train from Milano P.Garibaldi to Villach Hbf
Ave. Duration
5h 57m
Frequency
Twice a week
Estimated price
750 kn - 1.700 kn
Website
Trenitalia Eurocity
2nd Class
750 kn - 1.000 kn
1st Class
1.200 kn - 1.700 kn
Bus operators
GoOpti
Phone
+386 1 320 4530
Email
info@goopti.com
Website
goopti.com
Shuttle from Trieste Airport to Ljubljana
Ave. Duration
1h 15m
Frequency
On demand
Estimated price
230 kn - 2.200 kn
Schedules at
goopti.com
Shared
230 kn - 290 kn
Private
800 kn - 2.200 kn
Shuttle from Ljubljana to Zagreb
Ave. Duration
1h 48m
Frequency
On demand
Estimated price
210 kn - 1.600 kn
Schedules at
goopti.com
Shared
210 kn - 270 kn
Private
850 kn - 1.600 kn
Vincek Autobusi ltd.
Phone
0800 1992
Email
Gradski-bus@autobusi-vincek.com
Website
autobusi-vincek.com
Bus from Venezia - Tronchetto to Zagreb
Ave. Duration
4h 40m
Frequency
Twice a week
Estimated price
250 kn - 290 kn
Schedules at
autobusi-vincek.com
Eurolines FR

Eurolines is a network of coach companies that operate throughout Europe plus Morocco. It’s an affordable way to travel around the continent, with tickets starting at €5. All coaches have Wi-Fi, plug sockets and USBs, reclining chairs and toilets, and a standard ticket includes up to two medium suitcases plus carry-on luggage. Within France, Eurolines serves 69 destinations; including Paris, Lyon, Versailles, Nice and Bordeaux.

Contact Details
Phone
+ 33 1 41 86 24 21
Website
eurolines.fr
Bus from Milano - Lampugnano to Zagreb
Ave. Duration
9h 45m
Frequency
Twice a week
Estimated price
240 kn - 340 kn
Website
Eurolines FR
Stav Bus
Phone
0381 325195
Email
stavbus@stav.it
Website
stavautolinee.it
Bus from Milan to Umag
Ave. Duration
7h 31m
Frequency
Once daily
Estimated price
410 kn - 470 kn
Schedules at
stavautolinee.it
Autotrans d.d.
Phone
+385 (0)72 660 660
Email
info@arriva.com.hr
Website
arriva.com.hr
Bus from Umag Crodux Gas Station to Zagreb Central Bus Station
Ave. Duration
5h
Frequency
Twice daily
Estimated price
150 kn - 220 kn
Website
Autotrans d.d.
Croatia Bus Domestic
Phone
+385 1 6113 073
Email
info@croatiabus.hr
Website
croatiabus.hr
Bus from Umag to Zagreb
Ave. Duration
4h 45m
Frequency
Once daily
Estimated price
85 kn - 130 kn
Schedules at
croatiabus.hr
Ferry operators
ACTV S.p.a
Phone
+ 39 041 27 22 111
Email
protocollo@pec.actv.it
Website
actv.avmspa.it
Ferry from P.le Roma "G" to Tronchetto Mercato
Ave. Duration
8 min
Frequency
Every 20 minutes
Website
ACTV S.p.a

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.

More Questions & Answers

The quickest flight from Milan Malpensa Airport to Zagreb Airport is the direct flight which takes 1h 30m.

Search flights

Milan to Zagreb bus services, operated by Eurolines FR, arrive at Zagreb station.

More details

Milan to Zagreb train services, operated by EuroNight, arrive at Zagreb Glavni Kol. station.

More details

Yes, the driving distance between Milan to Zagreb is 625 km. It takes approximately 5h 59m to drive from Milan to Zagreb.

Get driving directions

Swiss, Austrian Airlines, Lufthansa and Croatia Airlines offer flights from Milan Malpensa Airport to Zagreb Airport.

Search flights

There are 1690+ hotels available in Zagreb. Prices start at 750 kn per night.

More details

The best way to get from Milan to Milan Malpensa Airport is to train which takes 37 min and costs 11€ - 16€.

More details