Journey information
Overview: Milan to Zagreb flight
Flights from Milan to Zagreb depart on average 30 times per day, taking around 2h 23m. Cheap flight tickets for this journey start at €17 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 529 km distance in 1h 15m. February is the cheapest month to fly.
Distance 529 km |
Average flight duration 2h 23m |
Cheapest ticket price €17 |
Flights per day 30 |
Direct flights 1 |
Fastest flight 1h 15m |
First flight 5:25 AM |
Last flight 11:55 PM |
Cheapest Month Feb |
Cheapest Day Mon |
High Season Apr - Jun |
Low Season Jan - Mar |
Busiest Day Thu |
Least Busy Day Wed |
Best time to book 35 days |
The cheapest and fastest flights from Milan to Zagreb
Cheapest price
€21
Average price
€583
Fastest journey
1 h 10 m
Average duration
3 h 11 m
Flights per day
48
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 €583 if you buy it on the day, but the cheapest tickets can be found for only €21.
Of the 48 flights that leave Milan for Zagreb onSat, May 02, 1 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
On Sat, May 02 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, May 02 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 599911:05 PM1h10Milan Bergamo Orio al Serio Airport12:15 AMZagreb Franjo Tuđman Airport€211One-way0 transfers
LO318 · LO61110:30 AM25h35Milan Malpensa Airport12:05 PMZagreb Franjo Tuđman Airport€2081One-way1 transfer
LO318 · LO61310:30 AM6h50Milan Malpensa Airport5:20 PMZagreb Franjo Tuđman Airport€2081One-way1 transfer
LO320 · LO6117:40 PM16h25Milan Malpensa Airport12:05 PMZagreb Franjo Tuđman Airport€2081One-way1 transfer
LO320 · LO6137:40 PM21h40Milan Malpensa Airport5:20 PMZagreb Franjo Tuđman Airport€2081One-way1 transfer
FR 599911:05 PM1h10Milan Bergamo Orio al Serio Airport12:15 AMZagreb Franjo Tuđman Airport€211One-way0 transfers
LH7407+
LH17306:25 PM3h10Milan Linate Airport9:35 PMZagreb Franjo Tuđman Airport€3441One-way1 transfer
OS530 · OS6037:00 AM3h40Milan Linate Airport10:40 AMZagreb Franjo Tuđman Airport€3431One-way1 transfer
LH277+
LH60026:10 PM3h55Milan Linate Airport10:05 PMZagreb Franjo Tuđman Airport€4751One-way1 transfer
LH9513+
LH17268:35 AM4h00Milan Malpensa Airport12:35 PMZagreb Franjo Tuđman Airport€3411One-way1 transfer
Travel Information
Compare bus and flight for Milan to Zagreb
Omio 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 prices starting from €19. For those with little time consider booking a flight which can get you there in 2h 23m. In case you are seeking to minimise your carbon footprint the bus is your best bet as it emits only 0.5 - 1.3kg. The ticket price range depends on the travel mode: a bus costs an average of €19, and a flight costs an average of €17.
Distance: 529 km
Compare flight with
| Flight | Most popular Bus |
|---|---|
€202 Average price | €37 Average price Cheapest |
5h 23m Average total duration Fastest 2h 23m Onboard + 3h 0m Additional time* | 10h 48m Average total duration 10h 18m 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.
Live departures
Milan to Zagreb flight times
The table below shows live departures for Milan to Zagreb flights for today, Friday, May 1. You can also manually refresh the results below to see updated flight journeys.
| Provider | Departs | Duration | Arrives | Transfers | Tickets |
|---|---|---|---|---|---|
LO318+ LO4905+ LO4277 | 10:30 AM Milan Malpensa Airport | 25h00 | 11:30 AM Zagreb Franjo Tuđman Airport | 2 transfers | |
LO318 · LO353+ LH1730 | 10:30 AM Milan Malpensa Airport | 11h05 | 9:35 PM Zagreb Franjo Tuđman Airport | 2 transfers | |
LO318 · LO613 | 10:30 AM Milan Malpensa Airport | 6h55 | 5:25 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
LO318 · LO225+ LO4273 | 10:30 AM Milan Malpensa Airport | 10h05 | 8:35 PM Zagreb Franjo Tuđman Airport | 2 transfers | |
LO318 · LO353 · LO4277 | 10:30 AM Milan Malpensa Airport | 25h00 | 11:30 AM Zagreb Franjo Tuđman Airport | 2 transfers | |
LO318 · LO351 · LO4277 | 10:30 AM Milan Malpensa Airport | 25h00 | 11:30 AM Zagreb Franjo Tuđman Airport | 2 transfers | |
AZ2045 · AZ7020 | 11:30 AM Milan Linate Airport | 9h00 | 8:30 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
AZ2045+ OU381 · OU651 | 11:30 AM Milan Linate Airport | 19h30 | 7:00 AM Zagreb Franjo Tuđman Airport | 2 transfers | |
AZ2045+ OU381 | 11:30 AM Milan Linate Airport | 9h00 | 8:30 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
AZ2133+ OU381 · OU651 | 1:00 PM Milan Linate Airport | 18h00 | 7:00 AM Zagreb Franjo Tuđman Airport | 2 transfers | |
AZ2133+ OU381 | 1:00 PM Milan Linate Airport | 7h30 | 8:30 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
AZ2133 · AZ7020 | 1:00 PM Milan Linate Airport | 7h30 | 8:30 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 | |
AZ2071+ OU381 | 3:00 PM Milan Linate Airport | 5h30 | 8:30 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
OU5345 · OU381 · OU651 | 3:00 PM Milan Linate Airport | 16h00 | 7:00 AM Zagreb Franjo Tuđman Airport | 2 transfers | |
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 | 5h30 | 8:30 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
AZ2071 · AZ7020 | 3:00 PM Milan Linate Airport | 5h30 | 8:30 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
AZ2071+ 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 | |
AZ2059 · AZ7020 | 4:00 PM Milan Linate Airport | 4h30 | 8:30 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
SN4162+ SN5505 | 5:30 PM Milan Linate Airport | 4h40 | 10:10 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
LH5125+ LH1730 | 5:35 PM Milan Linate Airport | 4h00 | 9:35 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
AZ452+ OU5435 | 5:35 PM Milan Linate Airport | 4h00 | 9:35 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
AZ2097+ OU381 · OU657 | 6:00 PM Milan Linate Airport | 27h35 | 9:35 PM Zagreb Franjo Tuđman Airport | 2 transfers | |
LH277+ LH6002 | 6:10 PM Milan Linate Airport | 3h55 | 10:05 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 | |
AZ2109+ OU381 · OU657 | 7:00 PM Milan Linate Airport | 26h35 | 9:35 PM Zagreb Franjo Tuđman Airport | 2 transfers | |
AZ2109+ OU385 | 7:00 PM Milan Linate Airport | 26h00 | 9:00 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
LH279+ LH1406 | 7:30 PM Milan Linate Airport | 4h00 | 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 · LO613 | 7:40 PM Milan Malpensa Airport | 21h40 | 5:20 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 · LO351 · LO4277 | 7:40 PM Milan Malpensa Airport | 15h50 | 11:30 AM Zagreb Franjo Tuđman Airport | 2 transfers | |
| Saturday, May 2 | |||||
LX1639+ LX4250 | 5:50 AM Milan Malpensa Airport | 7h15 | 1:05 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 | |
AZ2013+ OU385 | 7:00 AM Milan Linate Airport | 14h00 | 9:00 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
AZ450+ OU4437 | 7:30 AM Milan Linate Airport | 4h00 | 11:30 AM Zagreb Franjo Tuđman Airport | 1 transfer | |
LH5123+ LH1726 | 7:30 AM Milan Linate Airport | 5h05 | 12:35 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
LH5123+ LH5988 | 7:30 AM Milan Linate Airport | 4h00 | 11:30 AM Zagreb Franjo Tuđman Airport | 1 transfer | |
AZ450+ OU5439 | 7:30 AM Milan Linate Airport | 5h05 | 12:35 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
AZ2021+ OU381 · OU657 | 8:00 AM Milan Linate Airport | 13h35 | 9:35 PM Zagreb Franjo Tuđman Airport | 2 transfers | |
AZ2021+ OU385 | 8:00 AM Milan Linate Airport | 13h00 | 9:00 PM 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+ LH6006 | 9:00 AM Milan Malpensa Airport | 8h15 | 5:15 PM Zagreb Franjo Tuđman Airport | 1 transfer | |
AZ2029+ OU385 | 9:00 AM Milan Linate Airport | 12h00 | 9:00 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 | |
AZ2029+ OU381 · OU657 | 9:00 AM Milan Linate Airport | 12h35 | 9:35 PM Zagreb Franjo Tuđman Airport | 2 transfers | |
This is the last flight of the day. | |||||
Find all the dates and times for this journey
How far in advance should I book flight tickets from Milan to Zagreb?
Compare prices and tickets Milan to Zagreb by bus or flight
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.
May 01
May 02
May 03
May 04
May 05
May 06
May 07
May 08
May 09
May 10
May 11
May 12
May 13
May 14
May 15
May 16
May 17
May 18
May 19
May 20
May 21
Why should you book Milan to Zagreb flights with Omio?
Why book with Omio vs Ryanair?
- Compare with other providers: On Omio, you can not only buy tickets for Ryanair, but also compare tickets for the likes of Malta Air, Air Serbia, Croatia Airlines or Austrian Airlines to find the best option for your trip from Milan to Zagreb.
- Designed for International Travelers: Omio is in your language including 24/7 customer service and offers multiple payment options, including PayPal, credit cards, and bank transfer, in your preferred currency.
- Compare all your options: Omio allows you to compare Ryanair with all available travel options, which are bus and flight to ensure you get the best deal for traveling from Milan to Zagreb.
Why book with Omio over Edreams, Kayak or Skyscanner?
- Compare with other providers: On Omio, you can also compare tickets for the likes of Malta Air, Air Serbia, Croatia Airlines or Austrian Airlines to find the best option for your trip from Milan to Zagreb.
- Multiple modes of transport: Omio allows you to compare travel options including bus and flight to find the ideal travel option from Milan to Zagreb.
Airlines: Ryanair, Malta Air, Air Serbia, Croatia Airlines, Austrian Airlines, Eurowings, Lufthansa Cityline, Lufthansa, Air Dolomiti, Lot Polish Airlines from Milan to ZagrebFind the best flights between Milan to Zagreb with Omio's travel partners Ryanair, Malta Air, Air Serbia, Croatia Airlines, Austrian Airlines, Eurowings, Lufthansa Cityline, Lufthansa, Air Dolomiti, Lot Polish Airlines from €17. We can find you the best deals, schedules and tickets when comparing and booking the best trip.
Austrian Airlines
Lufthansa Cityline
Lufthansa
Air Serbia
Croatia Airlines
Eurowings
Air Dolomiti
Lot Polish Airlines
Malta Air
Ryanair
FAQs: Milan to Zagreb Flight
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.

popular airports
Popular airports from Milan to Zagreb
- Free Wi-Fi available throughout the airport.
- Shops available, including Duty-Free and WHSmith, located in the departures area.
- Parking available in P1, P2, and P3 lots, approximately 2.5€ per hour.
- Available outside the terminal.
- Ramps, assistance.
- Available throughout the airport.
- Yes
- Lounge available, Sala Leonardo Lounge, access with membership or fee.
- Located in the arrivals area, near baggage claim.
- Bus 73
- Bus X73
- Free Wi-Fi available throughout the airport.
- Shops available in both terminals, including duty-free and fashion brands like Gucci and Prada.
- Parking available at Terminal 1 and Terminal 2, approximately 2.5€ per hour.
- Available outside the terminal.
- Elevators, ramps.
- Available throughout the airport.
- Yes
- Lounges available in Terminal 1, including Sala Montale and Club SEA.
- Located in both terminals, near baggage claim.
- Train: Malpensa Express
- Bus: Terravision, Autostradale, Malpensa Shuttle
- Free Wi-Fi available throughout the airport.
- Shops available, including duty-free and fashion stores, located in the departures area.
- Parking available near the terminal, approximately 3€ per hour.
- Available outside the terminal.
- Elevators, ramps.
- Available throughout the airport.
- Yes
- Lounge available, with access for a fee or membership.
- Located in the arrivals area.
- Bus: Line 1, Line 5
- Train: NA
- Metro: NA
- Free Wi-Fi available throughout the airport.
- Shops available, located in the terminal, including duty-free and local products.
- Parking available, short-term parking costs approximately 1.3€ (10 HRK) per hour.
- Available outside the terminal.
- Elevators, ramps.
- Available throughout the airport.
- Yes
- Lounges available, Business Lounge located in the terminal.
- Located in the arrivals area.
- Bus: 290, 330
- Train: NA
- Metro: NA
Most popular flights from Milan
More options for your journey from Milan to Zagreb
Here are some other resources that might have the information you need



