- Must visit
Museum of Broken Relationships
Globally known museum presenting intimate stories from former relationships through donated objects, both moving and uniquely memorable.
Flights from Milan to Zagreb depart on average 36 times per day, taking around 2h 19m. Cheap flight tickets for this journey start at €16 if you book in advance.
There are 1 flights per day. The earliest flight runs at 05:25, the last at 23:55. The fastest flight covers the 328 miles (529 km) distance in 1h 10m. September is the cheapest month to fly.
Distance 328 miles (529 km) |
Average flight duration 2h 19m |
Cheapest ticket price €16 |
Flights per day 36 |
Direct flights 1 |
Fastest flight 1h 10m |
First flight 5:25 AM |
Last flight 11:55 PM |
Cheapest Month Sep |
Cheapest Day Sun |
High Season Jul - Sep |
Low Season Jan - Mar |
Busiest Day Thu |
Least Busy Day Fri |
Best time to book 84 days |
Cheapest price on Aug 29
€25
Average ticket price on Aug 29
€394
Fastest journey on Aug 29
1 h 10 m
Average journey duration on Aug 29
3 h 11 m
Flights on Aug 29
34
Distance
529 km
The best way to find a cheap flight ticket from Milan to Zagreb is to book your journey as far in advance as possible and to avoid traveling at rush hour.
The average ticket from Milan to Zagreb will cost around €394 if you buy it on the day, but the cheapest tickets can be found for only €25.
On Sat, Aug 29, we found 34 flights from Milan to Zagreb, including 1 direct services.
On Sat, Aug 29 the direct flights cover the 529 km distance in an average of 3 h 11 m but if you time it right, some flights will get you there in just 1 h 10 m .
On Sat, Aug 29 the longest flights will take 4 h and usually involve a change or two along the way, but you might be able to save a few pennies if you’re on a budget.
FR 5999
LO318 · LO611
LO320 · LO611
LO320 · LO613
LO318 · LO613
FR 5999
LH1730+
LH7407
OS530 · OS603
LH277+
LH6002
LH1726+
LH9513Omio recommends booking the bus as it is the most popular option from Milan to Zagreb among Omio's users. If you are prioritising price, take the bus, with an average ticket price of €49 For those with little time, consider booking a flight, which has an average total journey time of 4h 19m. If you are seeking to minimise your carbon footprint, the bus is your best option, with estimated CO2 emissions of 0.5 - 1.3kg. Average ticket prices depend on the travel mode: a bus costs an average of €49, while a flight costs an average of €99.
Distance: 328 miles (529 km)
| Flight | Most popular Bus |
|---|---|
€99 Average price | €49 Average price Cheapest |
4h 19m Average total duration Fastest 2h 19m Onboard + 2h 0m Additional time* | 10h 39m Average total duration 10h 9m Onboard + 30m Additional time* |
1.6 - 3.2kg CO2 emissions | 0.5 - 1.3kg CO2 emissions Lowest |
![]() Most popular airline | ![]() Most popular bus company |
Direct Options | Direct Options |
Additional time: Average total travel duration to departure point, security checks and transfers.
This is compared to other travel options from Milan to Zagreb:
A bus is €50 less than a flight for this route with tickets for a flight from Milan to Zagreb costing on average €99.
Other travel options to Zagreb take longer:
Bus takes on average 10h 9m.
Train takes on average 10h 19m.
The table below shows live departures for Milan to Zagreb flights for today, Friday, August 28. You can also manually refresh the results below to see updated flight journeys.
| Provider | Departs | Duration | Arrives | Transfers | Tickets |
|---|---|---|---|---|---|
LH1853+ LH1730 | 1:40 PM Milan Linate Airport | 7h55 | 9:35 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
FR 5999 | 2:00 PM Milan Bergamo Orio al Serio Airport | 1h10 | 3:10 PM Zagreb Franjo Tuđman Airport | 0 transfersDirect | |
LH5637+ LH6006 | 2:40 PM Milan Malpensa Airport | 4h40 | 7:20 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
AZ2059+ AZ7020 | 2:45 PM Milan Linate Airport | 5h50 | 8:35 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
LX1629+ LX4252 | 2:55 PM Milan Malpensa Airport | 6h30 | 9:25 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
OS524+ OS7053 | 3:00 PM Milan Linate Airport | 5h35 | 8:35 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
OU5345 · OU381 | 3:00 PM Milan Linate Airport | 5h35 | 8:35 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
AZ2071+ AZ7020 | 3:00 PM Milan Linate Airport | 5h35 | 8:35 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
OU5345 · OU381 · OU6655 | 3:00 PM Milan Linate Airport | 30h40 | 9:40 PM Zagreb Franjo Tuđman Airport | 2 transfers | |
OU5345 · OU381 · OU659 | 3:00 PM Milan Linate Airport | 32h55 | 11:55 PM Zagreb Franjo Tuđman Airport | 2 transfers | |
OU5345 · OU381 · OU651 | 3:00 PM Milan Linate Airport | 16h00 | 7:00 AM Zagreb Franjo Tuđman Airport | 2 transfers | |
LH275+ LH6006 | 3:25 PM Milan Linate Airport | 3h55 | 7:20 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
LH1857 · LH1730 | 5:20 PM Milan Malpensa Airport | 4h15 | 9:35 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
LH1855+ LH1730 | 6:25 PM Milan Linate Airport | 3h10 | 9:35 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
LH255 · LH1406 | 6:50 PM Milan Malpensa Airport | 4h40 | 11:30 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
LH279+ LH1406 | 7:25 PM Milan Linate Airport | 4h05 | 11:30 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
LH257 · LH1406 | 7:30 PM Milan Malpensa Airport | 4h00 | 11:30 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
LO320+ LO4905+ LO4277 | 7:40 PM Milan Malpensa Airport | 15h50 | 11:30 AM Zagreb Franjo Tuđman Airport | 2 transfers | |
LO320 · LO613 | 7:40 PM Milan Malpensa Airport | 21h40 | 5:20 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
LO320 · LO351 · LO4277 | 7:40 PM Milan Malpensa Airport | 15h50 | 11:30 AM Zagreb Franjo Tuđman Airport | 2 transfers | |
LO320 · LO381+ LH1404 | 7:40 PM Milan Malpensa Airport | 18h20 | 2:00 PM Zagreb Franjo Tuđman Airport | 2 transfers | |
LO320+ LO4905 · LH1726 | 7:40 PM Milan Malpensa Airport | 16h55 | 12:35 PM Zagreb Franjo Tuđman Airport | 2 transfers | |
LO320 · LO351+ LH1726 | 7:40 PM Milan Malpensa Airport | 16h55 | 12:35 PM Zagreb Franjo Tuđman Airport | 2 transfers | |
| Saturday, August 29 | |||||
LX4250+ LX1639 | 5:50 AM Milan Malpensa Airport | 7h05 | 12:55 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
LH281+ LH1404 | 6:50 AM Milan Linate Airport | 7h10 | 2:00 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
OS530 · OS603 | 7:00 AM Milan Linate Airport | 3h40 | 10:40 AM Zagreb Franjo Tuđman Airport | 1 transfer | |
LH9513+ LH1726 | 8:35 AM Milan Malpensa Airport | 4h00 | 12:35 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
LH247 · LH1404 | 9:00 AM Milan Malpensa Airport | 5h00 | 2:00 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
LO318 · LO611 | 10:30 AM Milan Malpensa Airport | 25h35 | 12:05 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
LO318 · LO613 | 10:30 AM Milan Malpensa Airport | 6h50 | 5:20 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
LO318 · LO381+ LO4275 | 10:30 AM Milan Malpensa Airport | 35h35 | 10:05 PM Zagreb Franjo Tuđman Airport | 2 transfers | |
OU5347 · OU385 · OU663 | 10:30 AM Milan Linate Airport | 29h55 | 4:25 PM Zagreb Franjo Tuđman Airport | 2 transfers | |
OU5347 · OU385 · OU661 | 10:30 AM Milan Linate Airport | 20h40 | 7:10 AM Zagreb Franjo Tuđman Airport | 2 transfers | |
OU5347 · OU381 · OU6655 | 10:30 AM Milan Linate Airport | 11h10 | 9:40 PM Zagreb Franjo Tuđman Airport | 2 transfers | |
OU5347 · OU381 · OU659 | 10:30 AM Milan Linate Airport | 13h25 | 11:55 PM Zagreb Franjo Tuđman Airport | 2 transfers | |
OU5347 · OU385 | 10:30 AM Milan Linate Airport | 10h20 | 8:50 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
LH6905+ LH6006 | 10:40 AM Milan Linate Airport | 6h35 | 5:15 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
LH249+ LH6006 | 11:20 AM Milan Malpensa Airport | 5h55 | 5:15 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
LH273+ LH6006 | 12:40 PM Milan Linate Airport | 4h35 | 5:15 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
This is the last flight of the day. | |||||
Find all the dates and times for this journey
Compare bus and flight prices over the next three weeks. See the best deals at a glance, find the lowest fares, and choose the option that fits your budget.
Discover the best of Zagreb — top attractions, local food, transport tips, budget advice, and currency essentials. Plan your perfect Zagreb trip today.
Globally known museum presenting intimate stories from former relationships through donated objects, both moving and uniquely memorable.
Leading Croatian art museum with major collections from medieval works to modern masters, ideal for a broad cultural overview.
Major archaeology museum featuring Egyptian, Greek, Roman, and Croatian finds, including the famous Zagreb mummy linen text.
Lively central square and Zagreb’s main meeting point, surrounded by historic facades, shops, and easy access to major sights.
Historic Upper Town quarter of cobbled streets, government buildings, and landmark churches, ideal for slow walks and city history.
Beloved inner-city park with shaded paths, ponds, and sculptures, offering a relaxed break near museums and the main railway station.
Štrukli are baked or boiled pastry parcels filled with fresh cheese and sour cream, a signature dish of Zagreb and Hrvatsko Zagorje served from snack to dessert.
Purica s mlincima is roast turkey with baked flatbread softened in roasting juices. It is a festive Sunday classic in Zagreb and northwestern Croatia.
Zagrebački odrezak is a breaded veal cutlet stuffed with ham and cheese, then fried. It is Zagreb's best-known city-style comfort dish.
Refined fine-dining restaurant offering contemporary Croatian tasting menus with seasonal ingredients and polished service.
Beloved traditional tavern near Dolac Market serving roast meats, sarma and local comfort food in a lively, rustic atmosphere.
Historic city-center restaurant known for Zagrebački odrezak, štrukli and classic Croatian dishes in an elegant old-world setting.
Moderate for Central Europe. Hotels rise in summer, but dining, coffee, and trams stay fairly affordable for most visitors.
Tipping is appreciated but not mandatory. Round up in cafes and taxis, or leave 5-10% in restaurants for good service.
Find answers to the most common questions about traveling from Milan to Zagreb by flight. From journey times and ticket prices to direct connections, first and last departures, and even whether the route is scenic, our FAQs cover everything you need to plan your trip. Whether you’re looking for the fastest flight, the cheapest option, or tips for making the most of your visit at Zagreb, this guide helps you travel smarter and with confidence.

Most Milan to Zagreb flights use the Milan Linate Airport to Zagreb Franjo Tuđman Airport airport pair. Use this guide to compare Milan and Zagreb airports on this route, check city-centre transport, alongside checking practicalities like airport facilities and services.
Milan Linate Airport is 6 km from Milan city centre. Public transport options include:
Milan Linate Airport has practical services for this route, including Wifi, Shopping, Parking, ATM, Taxis, Accessibility, WC, Shower, Lounge, and Lost and Found Office.
Free Wi-Fi available throughout the airport. ATMs are located in the arrivals and departures areas.
Lost and found is available at the station.
Available at Milan Linate Airport: Parking, Taxis, WC.
Accessibility facilities are available at Milan Linate Airport: Ramps, assistance.
Milan Malpensa Airport is 2 km from Milan city centre. Public transport options include:
Milan Malpensa Airport has practical services for this route, including Wifi, Shopping, Parking, ATM, Taxis, Accessibility, WC, Shower, Lounge, and Lost and Found Office.
Free Wi-Fi available throughout the airport. ATMs are located in both terminals, near check-inas and gates.
Lost and found is available at the station.
Available at Milan Malpensa Airport: Parking, Taxis, WC.
Accessibility facilities are available at Milan Malpensa Airport: Elevators, ramps.
Milan Bergamo Orio al Serio Airport is 1 km from Milan city centre. Public transport options include:
Milan Bergamo Orio al Serio Airport has practical services for this route, including Wifi, Shopping, Parking, ATM, Taxis, Accessibility, WC, Shower, Lounge, and Lost and Found Office.
Free Wi-Fi available throughout the airport. ATMs are located in the arrivals and departures areas.
Lost and found is available at the station.
Available at Milan Bergamo Orio al Serio Airport: Parking, Taxis, WC.
Accessibility facilities are available at Milan Bergamo Orio al Serio Airport: Elevators, ramps.
Zagreb Franjo Tuđman Airport is 2 km from Zagreb city centre. Public transport options include:
Zagreb Franjo Tuđman Airport has practical services for this route, including Wifi, Shopping, Parking, ATM, Taxis, Accessibility, WC, Shower, Lounge, and Lost and Found Office.
Free Wi-Fi available throughout the airport. ATMs are located in the terminal.
Lost and found is available at the station.
Available at Zagreb Franjo Tuđman Airport: Parking, Taxis, WC.
Accessibility facilities are available at Zagreb Franjo Tuđman Airport: Elevators, ramps.
Here are some other resources that might have the information you need