Journey information
Overview: Utrecht to Milan flight
Flights from Utrecht to Milan depart on average 116 times per day, taking around 1h 37m. Cheap flight tickets for this journey start at £15 if you book in advance.
There are 23 flights per day. The earliest flight runs at 05:45, the last at 23:55. The fastest flight covers the 795 km distance in 1h 25m. April is the cheapest month to fly.
Distance 795 km |
Average flight duration 1h 37m |
Cheapest ticket price £15 |
Flights per day 116 |
Direct flights 23 |
Fastest flight 1h 25m |
Cheapest month to travel April |
First flight 05:45 |
Last flight 23:55 |
The cheapest and fastest flights from Utrecht to Milan
Cheapest price
£78
Average price
£489
Fastest journey
1 h 25 m
Average duration
1 h 25 m
Flights per day
155
Distance
795 km
The best way to find a cheap flight ticket from Utrecht to Milan is to book your journey as far in advance as possible and to avoid travelling at rush hour.
The average ticket from Utrecht to Milan will cost around £489 if you buy it on the day, but you can find cheap flight tickets today for only £78.
Of the 155 flights that leave Utrecht for Milan every day 27 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
These direct flights cover the 795 km distance in an average of 1 h 25 m but if you time it right, some flights will get you there in just 1 h 25 m .
The slowest flights will take 1 h 25 m 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 447406:451h30Brussels South Charleroi Airport08:15Milan Bergamo Orio al Serio Airport£781One-way0 changes
FR 366021:401h30Brussels South Charleroi Airport23:10Milan Bergamo Orio al Serio Airport£1111One-way0 changes
FR 353818:101h35Eindhoven Airport19:45Milan Bergamo Orio al Serio Airport£1161One-way0 changes
U2543409:251h25Brussels Airport10:50Milan Linate Airport£1211One-way0 changes
FR 452215:051h30Brussels South Charleroi Airport16:35Milan Bergamo Orio al Serio Airport£1221One-way0 changes
U2543409:251h25Brussels Airport10:50Milan Linate Airport£1211One-way0 changes
U2541221:101h25Brussels Airport22:35Milan Linate Airport£2091One-way0 changes
SN314916:351h25Brussels Airport18:00Milan Linate Airport£3231One-way0 changes
AZ15320:151h25Brussels Airport21:40Milan Linate Airport£3501One-way0 changes
SN413120:151h25Brussels Airport21:40Milan Linate Airport£5011One-way0 changes
Travel Information
Compare train, coach and flight for Utrecht to Milan
Omio recommends booking the flight as it is the most popular option from Utrecht to Milan among Omio's users. If you are prioritising price take the flight with prices starting from £15. For those with little time consider booking a flight which can get you there in 1h 37m. In case you are seeking to minimise your carbon footprint the coach is your best bet as it emits only 0.8 - 2.0kg. The ticket price range depends on the travel mode: a flight costs an average of £15, and a train costs an average of £328.
Distance: 795 km
Compare flight with
Most popular Flight | Coach | Train |
|---|---|---|
£60 Average Price Cheapest | £75 Average Price | £328 Average Price |
4h 37m Average total duration Fastest 1h 37m Onboard + 3h 0m Additional time* | 18h 45m Average total duration 18h 15m Onboard + 30m Additional time* | 11h 38m Average total duration 11h 8m Onboard + 30m Additional time* |
2.4 - 4.8kg CO2 emissions | 0.8 - 2.0kg CO2 emissions Lowest | - CO2 emissions |
![]() Most popular airline | ![]() Most popular bus company | ![]() Most popular train company |
Direct Options | Direct Options | Direct Options |
Additional time: Average total travel duration to departure point, security checks and transfers.
Live departures
Utrecht to Milan flight times
The table below shows live departures for Utrecht to Milan flights for today, Saturday 28 March. You can also manually refresh the results below to see updated flight journeys.
| Provider | Departs | Duration | Arrives | Changes | Tickets |
|---|---|---|---|---|---|
KL1700+ KL1613 | 05:15 Brussels Airport | 3h45 | 09:00 Milan Linate Airport | 1 change | |
KL1700 · KL1615 | 05:15 Brussels Airport | 9h40 | 14:55 Milan Linate Airport | 1 change | |
KL1700+ KL1597 | 05:15 Brussels Airport | 5h45 | 11:00 Milan Linate Airport | 1 change | |
SN3153 | 05:20 Brussels Airport | 1h25 | 06:45 Milan Malpensa Airport | 0 changesdirect | |
AZ7653 | 05:20 Brussels Airport | 1h25 | 06:45 Milan Malpensa Airport | 0 changesdirect | |
AF8373+ AF1830 | 05:55 Amsterdam Airport Schiphol | 3h40 | 09:35 Milan Malpensa Airport | 1 change | |
AF8373+ AF1412 | 05:55 Amsterdam Airport Schiphol | 4h20 | 10:15 Milan Linate Airport | 1 change | |
LH5587+ LH248 | 06:00 Brussels Airport | 3h45 | 09:45 Milan Malpensa Airport | 1 change | |
BA449 · BA572 | 06:15 Amsterdam Airport Schiphol | 7h45 | 14:00 Milan Linate Airport | 1 change | |
LH1003+ LH5668 | 06:15 Amsterdam Airport Schiphol | 5h35 | 11:50 Milan Linate Airport | 1 change | |
LH1003 · LH248 | 06:15 Amsterdam Airport Schiphol | 3h30 | 09:45 Milan Malpensa Airport | 1 change | |
AF5473+ AF1412 | 06:20 Amsterdam Airport Schiphol | 3h55 | 10:15 Milan Linate Airport | 1 change | |
KL1702 · KL1617 | 07:05 Brussels Airport | 10h30 | 17:35 Milan Linate Airport | 1 change | |
KL1702+ KL1597 | 07:05 Brussels Airport | 3h55 | 11:00 Milan Linate Airport | 1 change | |
KL1702 · KL1615 | 07:05 Brussels Airport | 7h50 | 14:55 Milan Linate Airport | 1 change | |
LH2311+ LH9448 | 07:15 Amsterdam Airport Schiphol | 4h20 | 11:35 Milan Malpensa Airport | 1 change | |
KL1613 | 07:25 Amsterdam Airport Schiphol | 1h35 | 09:00 Milan Linate Airport | 0 changesdirect | |
LH1007+ LH5636 | 08:00 Brussels Airport | 4h55 | 12:55 Milan Malpensa Airport | 1 change | |
LH1007+ LH5668 | 08:00 Brussels Airport | 3h50 | 11:50 Milan Linate Airport | 1 change | |
LH1007+ EN8804 | 08:00 Brussels Airport | 3h50 | 11:50 Milan Linate Airport | 1 change | |
LH2283+ EN8274 | 08:05 Brussels Airport | 3h30 | 11:35 Milan Malpensa Airport | 1 change | |
LH2283+ LH9448 | 08:05 Brussels Airport | 3h30 | 11:35 Milan Malpensa Airport | 1 change | |
SN4133 | 08:25 Brussels Airport | 1h25 | 09:50 Milan Linate Airport | 0 changesdirect | |
AZ151 | 08:25 Brussels Airport | 1h25 | 09:50 Milan Linate Airport | 0 changesdirect | |
LH5569+ LH5668 | 08:30 Brussels Airport | 3h20 | 11:50 Milan Linate Airport | 1 change | |
LH5569+ LH5636 | 08:30 Brussels Airport | 4h25 | 12:55 Milan Malpensa Airport | 1 change | |
AF1241 · AF1330 | 08:35 Amsterdam Airport Schiphol | 5h20 | 13:55 Milan Malpensa Airport | 1 change | |
AF1241 · AF1012 | 08:35 Amsterdam Airport Schiphol | 4h20 | 12:55 Milan Linate Airport | 1 change | |
U21950 | 08:35 Amsterdam Airport Schiphol | 1h40 | 10:15 Milan Linate Airport | 0 changesdirect | |
BA8496+ BA574 | 08:40 Amsterdam Airport Schiphol | 8h25 | 17:05 Milan Linate Airport | 1 change | |
BA8496+ BA584 | 08:40 Amsterdam Airport Schiphol | 10h00 | 18:40 Milan Linate Airport | 1 change | |
LX725 · LX1628 | 08:50 Amsterdam Airport Schiphol | 4h15 | 13:05 Milan Malpensa Airport | 1 change | |
BA387 · BA576 | 08:55 Brussels Airport | 11h40 | 20:35 Milan Linate Airport | 1 change | |
BA387 · BA574 | 08:55 Brussels Airport | 8h10 | 17:05 Milan Linate Airport | 1 change | |
BA387 · BA572 | 08:55 Brussels Airport | 5h05 | 14:00 Milan Linate Airport | 1 change | |
BA387 · BA584 | 08:55 Brussels Airport | 9h45 | 18:40 Milan Linate Airport | 1 change | |
LX4555+ LX1628 | 09:00 Brussels Airport | 4h05 | 13:05 Milan Malpensa Airport | 1 change | |
BA431 · BA584 | 09:10 Amsterdam Airport Schiphol | 9h30 | 18:40 Milan Linate Airport | 1 change | |
BA431 · BA572 | 09:10 Amsterdam Airport Schiphol | 4h50 | 14:00 Milan Linate Airport | 1 change | |
BA431 · BA574 | 09:10 Amsterdam Airport Schiphol | 7h55 | 17:05 Milan Linate Airport | 1 change | |
KL1597 | 09:20 Amsterdam Airport Schiphol | 1h40 | 11:00 Milan Linate Airport | 0 changesdirect | |
SN3147 | 09:25 Brussels Airport | 1h30 | 10:55 Milan Linate Airport | 0 changesdirect | |
AZ7645 | 09:25 Brussels Airport | 1h30 | 10:55 Milan Linate Airport | 0 changesdirect | |
U21960 | 09:30 Brussels Airport | 1h25 | 10:55 Milan Linate Airport | 0 changesdirect | |
LH5571+ LH5636 | 09:30 Brussels Airport | 3h25 | 12:55 Milan Malpensa Airport | 1 change | |
AF1341 · AF1330 | 09:35 Amsterdam Airport Schiphol | 4h20 | 13:55 Milan Malpensa Airport | 1 change | |
LH9435 · LH9490 | 09:40 Amsterdam Airport Schiphol | 7h30 | 17:10 Milan Linate Airport | 1 change | |
EN8947 · EN8802 | 09:40 Amsterdam Airport Schiphol | 7h30 | 17:10 Milan Linate Airport | 1 change | |
EN8947 · EN8806 | 09:40 Amsterdam Airport Schiphol | 6h20 | 16:00 Milan Linate Airport | 1 change | |
LH9435 · LH5640 | 09:40 Amsterdam Airport Schiphol | 6h20 | 16:00 Milan Linate Airport | 1 change | |
EN8947 · EN8810 | 09:40 Amsterdam Airport Schiphol | 3h15 | 12:55 Milan Malpensa Airport | 1 change | |
LH9435 · LH5636 | 09:40 Amsterdam Airport Schiphol | 3h15 | 12:55 Milan Malpensa Airport | 1 change | |
EN8947 · EN8812 | 09:40 Amsterdam Airport Schiphol | 7h15 | 16:55 Milan Malpensa Airport | 1 change | |
LH9435 · LH6902 | 09:40 Amsterdam Airport Schiphol | 7h15 | 16:55 Milan Malpensa Airport | 1 change | |
KL1704 · KL1617 | 09:45 Brussels Airport | 7h50 | 17:35 Milan Linate Airport | 1 change | |
KL1704 · KL1615 | 09:45 Brussels Airport | 5h10 | 14:55 Milan Linate Airport | 1 change | |
LH2303+ LH1856 | 09:45 Amsterdam Airport Schiphol | 5h55 | 15:40 Milan Malpensa Airport | 1 change | |
BA433 · BA584 | 10:30 Amsterdam Airport Schiphol | 8h10 | 18:40 Milan Linate Airport | 1 change | |
BA8452+ BA574 | 10:30 Amsterdam Airport Schiphol | 6h35 | 17:05 Milan Linate Airport | 1 change | |
BA433 · BA574 | 10:30 Amsterdam Airport Schiphol | 6h35 | 17:05 Milan Linate Airport | 1 change | |
BA8452+ BA584 | 10:30 Amsterdam Airport Schiphol | 8h10 | 18:40 Milan Linate Airport | 1 change | |
BA8452+ BA576 | 10:30 Amsterdam Airport Schiphol | 10h05 | 20:35 Milan Linate Airport | 1 change | |
BA389 · BA574 | 10:35 Brussels Airport | 6h30 | 17:05 Milan Linate Airport | 1 change | |
BA389 · BA584 | 10:35 Brussels Airport | 8h05 | 18:40 Milan Linate Airport | 1 change | |
BA389 · BA576 | 10:35 Brussels Airport | 10h00 | 20:35 Milan Linate Airport | 1 change | |
AZ121 | 10:50 Amsterdam Airport Schiphol | 1h40 | 12:30 Milan Linate Airport | 0 changesdirect | |
AZ107 · AZ2058 | 10:55 Amsterdam Airport Schiphol | 10h15 | 21:10 Milan Linate Airport | 1 change | |
AZ107 · AZ2044 | 10:55 Amsterdam Airport Schiphol | 4h15 | 15:10 Milan Linate Airport | 1 change | |
AZ107 · AZ2092 | 10:55 Amsterdam Airport Schiphol | 6h15 | 17:10 Milan Linate Airport | 1 change | |
U27827 | 11:10 Amsterdam Airport Schiphol | 1h35 | 12:45 Milan Linate Airport | 0 changesdirect | |
AF1501 · AF1730 | 11:40 Amsterdam Airport Schiphol | 4h45 | 16:25 Milan Malpensa Airport | 1 change | |
LH5627+ LH1856 | 11:45 Brussels Airport | 3h55 | 15:40 Milan Malpensa Airport | 1 change | |
FR 4474 | 12:35 Brussels South Charleroi Airport | 1h35 | 14:10 Milan Bergamo Orio al Serio Airport | 0 changesdirect | |
LH2305+ LH1854 | 12:40 Amsterdam Airport Schiphol | 5h10 | 17:50 Milan Linate Airport | 1 change | |
LH2305+ LH9514 | 12:40 Amsterdam Airport Schiphol | 7h05 | 19:45 Milan Malpensa Airport | 1 change | |
AF1641 · AF1312 | 13:00 Amsterdam Airport Schiphol | 5h35 | 18:35 Milan Linate Airport | 1 change | |
AF1641+ AF1630 | 13:00 Amsterdam Airport Schiphol | 4h50 | 17:50 Milan Malpensa Airport | 1 change | |
KL1615 | 13:15 Amsterdam Airport Schiphol | 1h40 | 14:55 Milan Linate Airport | 0 changesdirect | |
LH5573+ LH6902 | 13:25 Brussels Airport | 3h30 | 16:55 Milan Malpensa Airport | 1 change | |
LH5573+ LH9490 | 13:25 Brussels Airport | 3h45 | 17:10 Milan Linate Airport | 1 change | |
LH993+ LH9490 | 13:45 Amsterdam Airport Schiphol | 3h25 | 17:10 Milan Linate Airport | 1 change | |
LH993+ LH5638 | 13:45 Amsterdam Airport Schiphol | 7h15 | 21:00 Milan Malpensa Airport | 1 change | |
LH993+ LH6902 | 13:45 Amsterdam Airport Schiphol | 3h10 | 16:55 Milan Malpensa Airport | 1 change | |
KL1706+ KL1619 | 13:45 Brussels Airport | 8h10 | 21:55 Milan Linate Airport | 1 change | |
KL1706 · KL1617 | 13:45 Brussels Airport | 3h50 | 17:35 Milan Linate Airport | 1 change | |
BA437 · BA584 | 13:45 Amsterdam Airport Schiphol | 4h55 | 18:40 Milan Linate Airport | 1 change | |
BA437 · BA576 | 13:45 Amsterdam Airport Schiphol | 6h50 | 20:35 Milan Linate Airport | 1 change | |
AF1741 · AF1312 | 13:55 Amsterdam Airport Schiphol | 4h40 | 18:35 Milan Linate Airport | 1 change | |
BA391 · BA584 | 13:55 Brussels Airport | 4h45 | 18:40 Milan Linate Airport | 1 change | |
BA391 · BA576 | 13:55 Brussels Airport | 6h40 | 20:35 Milan Linate Airport | 1 change | |
AF1741+ AF1630 | 13:55 Amsterdam Airport Schiphol | 3h55 | 17:50 Milan Malpensa Airport | 1 change | |
LX4241+ LX1622 | 14:20 Brussels Airport | 2h55 | 17:15 Milan Malpensa Airport | 1 change | |
AF1651 · AF1312 | 14:50 Amsterdam Airport Schiphol | 3h45 | 18:35 Milan Linate Airport | 1 change | |
BA439 · BA576 | 15:05 Amsterdam Airport Schiphol | 5h30 | 20:35 Milan Linate Airport | 1 change | |
AF1841 · AF1732 | 15:40 Amsterdam Airport Schiphol | 5h45 | 21:25 Milan Linate Airport | 1 change | |
FR 3461 | 15:50 Eindhoven Airport | 1h45 | 17:35 Milan Bergamo Orio al Serio Airport | 0 changesdirect | |
KL1617 | 15:55 Amsterdam Airport Schiphol | 1h40 | 17:35 Milan Linate Airport | 0 changesdirect | |
LH5577+ LH5638 | 16:30 Brussels Airport | 4h30 | 21:00 Milan Malpensa Airport | 1 change | |
AZ109 · AZ2028 | 16:55 Amsterdam Airport Schiphol | 14h45 | 07:40 Milan Linate Airport | 1 change | |
AZ109 · AZ2130 | 16:55 Amsterdam Airport Schiphol | 5h15 | 22:10 Milan Linate Airport | 1 change | |
AZ109 · AZ2058 | 16:55 Amsterdam Airport Schiphol | 4h15 | 21:10 Milan Linate Airport | 1 change | |
AF8345+ AF1230 | 17:05 Amsterdam Airport Schiphol | 5h00 | 22:05 Milan Malpensa Airport | 1 change | |
AF8345+ AF1732 | 17:05 Amsterdam Airport Schiphol | 4h20 | 21:25 Milan Linate Airport | 1 change | |
LH997+ LH278 | 17:10 Amsterdam Airport Schiphol | 4h35 | 21:45 Milan Linate Airport | 1 change | |
LH997+ LH5638 | 17:10 Amsterdam Airport Schiphol | 3h50 | 21:00 Milan Malpensa Airport | 1 change | |
FR 4522 | 17:45 Brussels South Charleroi Airport | 1h35 | 19:20 Milan Bergamo Orio al Serio Airport | 0 changesdirect | |
AZ165 · AZ2036 | 17:55 Brussels Airport | 15h45 | 09:40 Milan Linate Airport | 1 change | |
AZ165 · AZ2038 | 17:55 Brussels Airport | 20h15 | 14:10 Milan Linate Airport | 1 change | |
AZ165 · AZ2028 | 17:55 Brussels Airport | 13h45 | 07:40 Milan Linate Airport | 1 change | |
AZ165 · AZ2032 | 17:55 Brussels Airport | 18h15 | 12:10 Milan Linate Airport | 1 change | |
AZ165 · AZ2130 | 17:55 Brussels Airport | 4h15 | 22:10 Milan Linate Airport | 1 change | |
AZ165 · AZ2044 | 17:55 Brussels Airport | 19h15 | 13:10 Milan Linate Airport | 1 change | |
AZ113 | 19:05 Amsterdam Airport Schiphol | 1h40 | 20:45 Milan Linate Airport | 0 changesdirect | |
U21962 | 19:10 Brussels Airport | 1h25 | 20:35 Milan Linate Airport | 0 changesdirect | |
VY8983 · VY6342 | 20:10 Brussels Airport | 15h05 | 11:15 Milan Malpensa Airport | 1 change | |
U27829 | 20:20 Amsterdam Airport Schiphol | 1h35 | 21:55 Milan Linate Airport | 0 changesdirect | |
KL1619 | 20:20 Amsterdam Airport Schiphol | 1h35 | 21:55 Milan Linate Airport | 0 changesdirect | |
QR274 · QR117 | 21:00 Amsterdam Airport Schiphol | 23h35 | 20:35 Milan Malpensa Airport | 1 change | |
This is the last flight of the day. | |||||
Find all the dates and times for this journey
Compare prices and tickets Utrecht to Milan by train, coach or flight
Compare train, coach 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.
29 Mar
30 Mar
31 Mar
01 Apr
02 Apr
03 Apr
04 Apr
05 Apr
06 Apr
07 Apr
08 Apr
09 Apr
10 Apr
11 Apr
Why should you book Utrecht to Milan flights with Omio?
Why book with Omio vs easyJet?
- Compare with other providers: On Omio, you can not only buy tickets for easyJet, but also compare tickets for the likes of Ryanair, Malta Air, ITA or Transavia France to find the best option for your trip from Utrecht to Milan.
- 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 easyJet with all available travel options, which are train, bus and flight to ensure you get the best deal for traveling from Utrecht to Milan.
Why book with Omio over Edreams, Kayak or Skyscanner?
- Compare with other providers: On Omio, you can also compare tickets for the likes of Ryanair, Malta Air, ITA or Transavia France to find the best option for your trip from Utrecht to Milan.
- Multiple modes of transport: Omio allows you to compare travel options including train, bus and flight to find the ideal travel option from Utrecht to Milan.
Airlines: easyJet, Ryanair, Malta Air, ITA, Transavia France, KLM Cityhopper from Utrecht to MilanFind the best flights between Utrecht to Milan with Omio's travel partners easyJet, Ryanair, Malta Air, ITA, Transavia France, KLM Cityhopper from £15. We can find you the best deals, schedules and tickets when comparing and booking the best trip.
ITA
Transavia France
KLM Cityhopper
easyJet
Malta Air
Ryanair
FAQs: Utrecht to Milan flights
Find answers to the most common questions about traveling from Utrecht to Milan 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 Milan, this guide helps you travel smarter and with confidence.

popular airports
Important Stations and Airports in Utrecht and Milan
- 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
Most popular flights from Utrecht
More options for your journey from Utrecht to Milan
Here are some other resources that might have the information you need














