COVID-19 Travel restrictions may apply upon entering Croatia. Learn More.

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

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

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

  1. Take the train from Milano P.Garibaldi to Venezia S. 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

474 kn - 895 kn

Cheapest option

Bus  •  11h 14m

  1. Take the bus from Milan to Zagreb 402

244 kn - 306 kn

8 alternative options

Train  •  11h 13m

  1. Take the train from Milano Centrale to Trieste Centrale Fr
  2. Take the train from Trieste Centrale to Ljubljana Re
  3. Take the train from Ljubljana to Zagreb Glavni Kol. Ec / ...

352 kn - 970 kn

Bus via Poreč  •  13h 6m

  1. Take the bus from Milan to Poreč International
  2. Take the bus from Porec Central Bus Station to Zagreb Central Bus Station Porec Central Bus Station - Zagreb Central Bus Station

510 kn - 832 kn

Night train  •  11h 12m

  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

520 kn - 816 kn

Drive  •  5h 55m

  1. Drive from Milan to Zagreb 626.4 km

550 kn - 850 kn

Fly Milan Linate to Zagreb  •  6h 32m

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

694 kn - 1.951 kn

Fly Milan Malpensa to Zagreb  •  6h 39m

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

764 kn - 1.949 kn

Fly Milan Linate to Ljubljana, shuttle  •  8h 36m

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

1.634 kn - 5.116 kn

Train, train to Zurich, fly to Zagreb  •  7h 55m

  1. Take the train from Milano Centrale to Chiasso
  2. Take the train from Chiasso to Zuerich Hb
  3. Fly from Zurich (ZRH) to Zagreb (ZAG) ZRH - ZAG

1.034 kn - 3.045 kn

Italy → Croatia
Partially open

Travel safe during COVID-19

International entry into Croatia from Italy

  • Entry is partially open for citizens and permanent residents of Italy
Show more details
Allowed for: All visitors

Restricted for: There are no current restrictions

Show less

Conditions of entry into Croatia from Italy

  • Negative COVID-19 test issued at most 2 days prior to boarding
This applies to arrivals from Italy
  • Travellers with a certificate of vaccination are exempted from providing a negative COVID-19 test
This applies to arrivals from all countries, with no exceptions
Show more details
  • Negative COVID-19 test issued at most 2 days prior to boarding
This doesn't apply to arrivals from: Australia, New Zealand, Rwanda, Singapore, South Korea, Thailand, China, Hong Kong and Macau
  • Travellers with a certificate of vaccination are exempted from providing a negative COVID-19 test
This applies to arrivals from all countries, with no exceptions

Show less

Rules to follow in Croatia

1.5m

Mandatory

Considerations leaving from Italy

The official advice is to avoid non-essential international travel to high risk countries

Frequently Asked Questions


Yes, but conditions apply when entering Croatia from Italy.

Explore options for future travel

Domestic travel is not restricted, but some conditions may apply

  • Face masks are mandatory
  • There is a social distancing requirement of 1.5 metres
  • Observe COVID-19 safety rules

Explore travel options

The national COVID-19 helpline number in Zagreb is 00385 91 468 30 32.

Wearing a face mask on public transport in Zagreb is mandatory.

The social distance requirement in Zagreb is 1.5 metres.

Make yourself known to an official member of staff and/or call the national coronavirus helpline number on 00385 91 468 30 32.

No, but conditions apply when returning to Italy from Croatia.

See options for return travel.

Last updated: 3 May 2021
Exceptions may apply, for full details: European Union.

We're working around the clock to bring you the latest COVID-19 travel updates.
This information is compiled from official sources. To the best of our knowledge, it is correct as of the last update.
Visit Rome2rio travel advice for general help.

Questions & Answers

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

More details

The quickest way to get from Milan to Zagreb is to drive which costs 75€ - 120€ and takes 5h 55m.

More details

No, there is no direct bus from Milan to Zagreb. However, there are services departing from via orefici, 24 fronte via cantu' and arriving at Zagreb via Milan. The journey, including transfers, takes approximately 11h 14m.

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 Trieste Centrale and Ljubljana. The journey, including transfers, takes approximately 11h 13m.

More details

The distance between Milan and Zagreb is 529 km. The road distance is 626.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 60€ - 120€.

More details

It takes approximately 8h 32m to get from Milan to Zagreb, including transfers.

More details

Milan to Zagreb bus services, operated by FlixBus, depart from Milan 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 train which takes 11h 13m and costs 45€ - 130€. Alternatively, you can bus, which costs 30€ - 45€ and takes 11h 14m, you could also fly, which costs 90€ - 260€ and takes 6h 32m.

Mode details

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

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

You can take a train from Milan to Zagreb via Trieste Centrale and Ljubljana in around 11h 13m. Alternatively, FlixBus operates a bus from Milan to Zagreb 5 times a week. Tickets cost 230 kn - 290 kn and the journey takes 9h 55m.

Airlines
Lufthansa
Website
lufthansa.com
Flights from Milan Linate to Zagreb via Frankfurt
Ave. Duration
4h 11m
When
Monday to Saturday
Estimated price
1.200 kn - 4.500 kn
Flights from Milan Malpensa to Zagreb via Frankfurt
Ave. Duration
4h 2m
When
Tuesday, Wednesday, Thursday, Friday and Sunday
Estimated price
1.300 kn - 4.000 kn
Flights from Milan Malpensa to Zagreb via Munich
Ave. Duration
3h 40m
When
Monday and Friday
Estimated price
750 kn - 1.900 kn
Flights from Milan Linate to Ljubljana via Frankfurt
Ave. Duration
6h 11m
When
Every day
Estimated price
2.400 kn - 3.700 kn
Flights from Zurich to Zagreb via Munich
Ave. Duration
2h 50m
When
Tuesday and Thursday
Estimated price
1.400 kn - 2.400 kn
Croatia Airlines
Website
croatiaairlines.com
Flights from Milan Linate to Zagreb via Brussels
Ave. Duration
4h 15m
When
Tuesday, Thursday, Friday and Sunday
Estimated price
1.400 kn - 3.700 kn
Flights from Milan Linate to Zagreb via Frankfurt
Ave. Duration
4h 30m
When
Monday to Saturday
Estimated price
1.000 kn - 2.700 kn
Flights from Zurich to Zagreb
Ave. Duration
1h 25m
When
Every day
Estimated price
1.400 kn - 2.400 kn
Flights from Zurich to Zagreb via Split
Ave. Duration
3h 20m
When
Saturday
Estimated price
1.400 kn - 2.400 kn
KLM
Website
klm.com
Flights from Milan Linate to Zagreb via Amsterdam Schiphol
Ave. Duration
4h 57m
When
Every day
Estimated price
800 kn - 2.600 kn
Flights from Milan Malpensa to Zagreb via Amsterdam Schiphol
Ave. Duration
6h 30m
When
Every day
Estimated price
1.600 kn - 4.100 kn
Swiss
Website
swiss.com
Flights from Milan Malpensa to Zagreb via Zurich
Ave. Duration
3h 20m
When
Monday and Thursday
Estimated price
750 kn - 1.900 kn
Flights from Zurich to Zagreb
Ave. Duration
1h 25m
When
Every day
Estimated price
1.400 kn - 2.400 kn
Air France
Website
airfrance.com
Flights from Milan Linate to Zagreb via Paris CDG
Ave. Duration
4h 35m
When
Monday, Thursday, Friday, Saturday and Sunday
Estimated price
750 kn - 2.500 kn
Flights from Milan Linate to Ljubljana via Paris CDG
Ave. Duration
4h 50m
When
Monday, Thursday, Saturday and Sunday
Estimated price
650 kn - 2.100 kn
Austrian Airlines
Website
austrian.com
Flights from Milan Malpensa to Zagreb via Vienna
Ave. Duration
4h 40m
When
Monday, Wednesday, Friday and Sunday
Estimated price
1.200 kn - 2.700 kn
Flights from Zurich to Zagreb via Vienna
Ave. Duration
3h 50m
When
Tuesday and Thursday
Estimated price
2.100 kn - 4.200 kn
Eurowings
Website
eurowings.com
Flights from Milan Malpensa to Zagreb via Stuttgart
Ave. Duration
4h 15m
When
Monday, Wednesday and Thursday
Estimated price
500 kn - 2.100 kn
LOT
Website
lot.com
Flights from Milan Malpensa to Zagreb via Warsaw Chopin
Ave. Duration
6h 20m
When
Tuesday
Estimated price
650 kn - 4.000 kn
easyJet
Website
easyjet.com
Flights from Milan Linate to Ljubljana via London Gatwick
Ave. Duration
6h
When
Friday
Estimated price
440 kn - 1.900 kn
Train operators
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 P.Garibaldi to Venezia S. Lucia
Ave. Duration
2h 29m
Frequency
Once daily
Estimated price
160 kn - 550 kn
Website
Trenitalia Frecce
Super Economy
160 kn - 230 kn
Base Standard
320 kn - 430 kn
Base Premium
390 kn - 550 kn
Train from Milano Centrale to Trieste Centrale
Ave. Duration
4h 20m
Frequency
Once daily
Estimated price
230 kn - 750 kn
Website
Trenitalia Frecce
Super Economy
230 kn - 310 kn
Base Standard
420 kn - 600 kn
Base Premium
500 kn - 750 kn
Trenitalia

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
Train from Trieste Centrale to Ljubljana
Ave. Duration
2h 33m
Frequency
Twice daily
Estimated price
60 kn - 130 kn
Website
Trenitalia
1st Class
115 kn - 130 kn
Slovenian Railways (SŽ)
Phone
+386 129 13 332
Email
potnik.info@slo-zeleznice.si
Website
potniski.sz.si
Train from Ljubljana to Zagreb Glavni Kol.
Ave. Duration
2h 20m
Frequency
Twice daily
Estimated price
60 kn - 130 kn
Website
Slovenian Railways (SŽ)
Intercity 2nd Class Ticket
75 kn - 95 kn
Regional Train Ticket
60 kn - 85 kn
Intercity 1st Class Ticket
110 kn - 130 kn
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
300 kn - 390 kn
Website
Nightjet
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
Night train from Villach Hbf to Zagreb Glavni Kol.
Ave. Duration
4h 15m
Frequency
Once daily
Estimated price
320 kn - 430 kn
Website
Austrian Railways
Book at
Austria Rail Pass
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 Chiasso
Ave. Duration
46 min
Frequency
Hourly
Estimated price
150 kn - 270 kn
Website
Swiss Railways (SBB/CFF/FFS)
Train from Chiasso to Zuerich Hb
Ave. Duration
2h 22m
Frequency
Hourly
Estimated price
390 kn - 700 kn
Website
Swiss Railways (SBB/CFF/FFS)
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
Train from Chiasso to Zuerich Hb
Ave. Duration
2h 22m
Frequency
Twice daily
Estimated price
280 kn - 600 kn
Website
Trenitalia Eurocity
2nd Class
280 kn - 380 kn
1st Class
450 kn - 600 kn
Bus operators
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
FlixBus

One of Europe’s leading bus companies, Flixbus serves 2000+ destinations in 29 countries, including Germany, France, Italy, Austria, the Netherlands and Croatia and into Scandinavia and eastern Europe, as well as some US cities. Coaches have toilets, free WiFi and power outlets, plus snacks and drinks for purchase on board. Flixbus is a good choice for the budget-conscious traveller; purchase tickets in advance for the cheapest fares (note: there is no option to reserve a seat in advance).

Rome2rio's guide to FlixBus
Contact Details
Phone
+49 1807 123 99 123
Email
info@flixbus.de
Website
flixbus.de
Bus from Milan to Zagreb
Ave. Duration
9h 55m
Frequency
5 times a week
Estimated price
230 kn - 290 kn
Website
flixbus.co.uk
Stav Bus
Phone
0381 325195
Email
stavbus@stav.it
Website
stavautolinee.it
Bus from Milan to Poreč
Ave. Duration
7h 51m
Frequency
Once daily
Estimated price
420 kn - 480 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 Porec Central Bus Station to Zagreb Central Bus Station
Ave. Duration
4h 15m
Frequency
3 times a day
Estimated price
150 kn - 210 kn
Website
Autotrans d.d.
Arriva d.o.o.
Phone
+385 (0)72 660 660
Email
info@arriva.com.hr
Website
arriva.com.hr
Bus from Porec Central Bus Station to Zagreb Central Bus Station
Ave. Duration
3h 45m
Frequency
Twice daily
Estimated price
110 kn - 160 kn
Website
Arriva d.o.o.
Autobusni Promet
Phone
+385 (42) 372 803
Email
info@ap.hr
Website
ap.hr
Bus from Poreč to Zagreb
Ave. Duration
5h 45m
Frequency
Twice daily
Estimated price
150 kn - 220 kn
Schedules at
ap.hr
Book at
varazdin.getbybus.com
Croatia Bus Domestic
Phone
+385 1 6113 073
Email
info@croatiabus.hr
Website
croatiabus.hr
Bus from Poreč to Zagreb
Ave. Duration
5h 30m
Frequency
Once daily
Estimated price
85 kn - 120 kn
Schedules at
croatiabus.hr
Polet Vinkovci
Phone
+385 (0) 32 308 935
Email
polet@polet.hr
Website
polet.hr
Bus from Poreč to Zagreb
Ave. Duration
4h 45m
Frequency
Once a week
Estimated price
351 kn
Schedules at
polet.hr
GoOpti
Phone
+386 1 320 4530
Email
info@goopti.com
Website
goopti.com
Shuttle from Ljubljana Airport to Zagreb
Ave. Duration
2h 6m
Frequency
On demand
Estimated price
220 kn - 1.900 kn
Schedules at
goopti.com
Shared
220 kn - 280 kn
Private
850 kn - 1.900 kn
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 15 minutes
Estimated price
57 kn
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

There is no direct flight from Milan Linate Airport to Zagreb Airport. The quickest flight takes 3h 30m and has one stopover.

Search flights

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

More details

Milan to Zagreb train services, operated by Slovenian Railways (SŽ), arrive at Zagreb Glavni Kol. station.

More details

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

Get driving directions

Air France, Alitalia, Croatia Airlines and two other airlines offer flights from Milan Linate Airport to Zagreb Airport.

Search flights

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

More details

The best way to get from Milan to Milan Linate Airport is to line 73 bus which takes 20 min and costs 1€ - 3€.

More details