The cheapest and fastest flights from Milan to Madrid
- Cheapest price on 13 Nov
- $120
- Average ticket price on 13 Nov
- $598
- Fastest journey on 13 Nov
- 2 h 20 m
- Average journey duration on 13 Nov
- 2 h 20 m
- Flights on 13 Nov
- 99
- Distance
- 1188 km
The best way to find a cheap flight ticket from Milan to Madrid is to book your journey as far in advance as possible and to avoid travelling at rush hour.
The average ticket from Milan to Madrid will cost around $598 if you buy it on the day, but you can find cheap flight tickets today for only $120.
On Fri, 13 Nov, we found 99 flights from Milan to Madrid, including 17 direct services.
These direct flights cover the 1188 km distance in an average of 2 h 20 m but if you time it right, some flights will get you there in just 2 h 20 m .
The slowest flights will take 2 h 20 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.
W463116:40 AM 2h30 Milan Malpensa Airport 9:10 AM Madrid Barajas Airport $120 1 One-way 0 changes
W464594:00 PM 2h30 Milan Malpensa Airport 6:30 PM Madrid Barajas Airport $144 1 One-way 0 changes
FR 54941:00 PM 2h20 Milan Bergamo Orio al Serio Airport 3:20 PM Madrid Barajas Airport $174 1 One-way 0 changes
FR 53107:25 PM 2h20 Milan Bergamo Orio al Serio Airport 9:45 PM Madrid Barajas Airport $179 1 One-way 0 changes
FR 27525:45 AM 2h20 Milan Malpensa Airport 8:05 AM Madrid Barajas Airport $181 1 One-way 0 changes
IB6742:25 PM 2h20 Milan Malpensa Airport 4:45 PM Madrid Barajas Airport $282 1 One-way 0 changes
IB6767:10 PM 2h20 Milan Malpensa Airport 9:30 PM Madrid Barajas Airport $282 1 One-way 0 changes
FR 54941:00 PM 2h20 Milan Bergamo Orio al Serio Airport 3:20 PM Madrid Barajas Airport $174 1 One-way 0 changes
FR 51209:45 AM 2h20 Milan Bergamo Orio al Serio Airport 12:05 PM Madrid Barajas Airport $199 1 One-way 0 changes
FR 30085:30 PM 2h20 Milan Malpensa Airport 7:50 PM Madrid Barajas Airport $258 1 One-way 0 changes
Journey information
Overview: Milan to Madrid flight
Flights from Milan to Madrid depart on average 80 times per day, taking around 4h 54m. Cheap flight tickets for this journey start at $21 but you can travel from only $18 by train.
There are 12 flights per day. The earliest flight runs at 00:10, the last at 23:45. The fastest flight covers the 1188 km distance in 2h 10m. December is the cheapest month to fly.
Distance 1188 km |
Average flight duration 4h 54m |
Cheapest ticket price $21 |
Flights per day 80 |
Direct flights 12 |
Fastest flight 2h 10m |
First flight 12:10 AM |
Last flight 11:45 PM |
Cheapest Month Dec |
Cheapest Day Sun |
High Season Apr - Jun |
Low Season Jan - Mar |
Busiest Day Tue |
Least Busy Day Sun |
Best time to book 56 days |
Frequently asked questions about your Milan to Madrid trip
Use these quick route answers to check fares, travel time, departure options, and direct services before booking from Milan to Madrid.
Live departures
Milan to Madrid flight times
The table below shows live departures for Milan to Madrid flights for today, Thursday, 12 November. You can also manually refresh the results below to see updated flight journeys.
| Provider | Departs | Duration | Arrives | Changes | Tickets |
|---|---|---|---|---|---|
EW9841 · EW9510 | 8:55 AM Milan Linate Airport | 8h40 | 5:35 PM Madrid Barajas Airport | 1 change | |
VY6041 · VY1014 | 10:10 AM Milan Malpensa Airport | 7h45 | 5:55 PM Madrid Barajas Airport | 1 change | |
IB672 | 10:15 AM Milan Malpensa Airport | 2h25 | 12:40 PM Madrid Barajas Airport | 0 changesdirect | |
UX1066 | 10:20 AM Milan Malpensa Airport | 2h25 | 12:45 PM Madrid Barajas Airport | 0 changesdirect | |
AZ2043 · AZ60 | 10:30 AM Milan Linate Airport | 6h40 | 5:10 PM Madrid Barajas Airport | 1 change | |
AF1831 · AF1800 | 11:00 AM Milan Malpensa Airport | 6h45 | 5:45 PM Madrid Barajas Airport | 1 change | |
AF1831 · AF1400 | 11:00 AM Milan Malpensa Airport | 12h05 | 11:05 PM Madrid Barajas Airport | 1 change | |
AF1831 · AF1100 | 11:00 AM Milan Malpensa Airport | 8h10 | 7:10 PM Madrid Barajas Airport | 1 change | |
AF1831 · AF1000 | 11:00 AM Milan Malpensa Airport | 22h10 | 9:10 AM Madrid Barajas Airport | 1 change | |
TK1874 · TK1857 | 11:05 AM Milan Malpensa Airport | 23h20 | 10:25 AM Madrid Barajas Airport | 1 change | |
TK1874 · TK1357 | 11:05 AM Milan Malpensa Airport | 26h10 | 1:15 PM Madrid Barajas Airport | 1 change | |
TK1874 · TK1859 | 11:05 AM Milan Malpensa Airport | 29h50 | 4:55 PM Madrid Barajas Airport | 1 change | |
LH247 · LH1114 | 11:20 AM Milan Malpensa Airport | 5h00 | 4:20 PM Madrid Barajas Airport | 1 change | |
BA567 · BA464 | 11:25 AM Milan Linate Airport | 5h40 | 5:05 PM Madrid Barajas Airport | 1 change | |
IB664 | 11:35 AM Milan Linate Airport | 2h25 | 2:00 PM Madrid Barajas Airport | 0 changesdirect | |
AZ2045 · AZ60 | 12:00 PM Milan Linate Airport | 5h10 | 5:10 PM Madrid Barajas Airport | 1 change | |
BA583 · BA466 | 12:20 PM Milan Malpensa Airport | 6h15 | 6:35 PM Madrid Barajas Airport | 1 change | |
AF1131 · AF1100 | 12:40 PM Milan Malpensa Airport | 6h30 | 7:10 PM Madrid Barajas Airport | 1 change | |
AF1131 · AF1000 | 12:40 PM Milan Malpensa Airport | 20h30 | 9:10 AM Madrid Barajas Airport | 1 change | |
AF1131 · AF1400 | 12:40 PM Milan Malpensa Airport | 10h25 | 11:05 PM Madrid Barajas Airport | 1 change | |
AF1131 · AF1800 | 12:40 PM Milan Malpensa Airport | 5h05 | 5:45 PM Madrid Barajas Airport | 1 change | |
BA569 · BA466 | 12:40 PM Milan Linate Airport | 5h55 | 6:35 PM Madrid Barajas Airport | 1 change | |
LH9449+ LH1804 | 1:10 PM Milan Malpensa Airport | 4h40 | 5:50 PM Madrid Barajas Airport | 1 change | |
VY6043 · VY1014 | 1:10 PM Milan Malpensa Airport | 4h45 | 5:55 PM Madrid Barajas Airport | 1 change | |
BA571 · BA468 | 2:15 PM Milan Linate Airport | 5h50 | 8:05 PM Madrid Barajas Airport | 1 change | |
BA571+ BA7059 | 2:15 PM Milan Linate Airport | 6h35 | 8:50 PM Madrid Barajas Airport | 1 change | |
IB674 | 2:25 PM Milan Malpensa Airport | 2h20 | 4:45 PM Madrid Barajas Airport | 0 changesdirect | |
TK1896 · TK1357 | 2:35 PM Milan Malpensa Airport | 22h40 | 1:15 PM Madrid Barajas Airport | 1 change | |
TK1896 · TK1857 | 2:35 PM Milan Malpensa Airport | 19h50 | 10:25 AM Madrid Barajas Airport | 1 change | |
TK1896 · TK1859 | 2:35 PM Milan Malpensa Airport | 26h20 | 4:55 PM Madrid Barajas Airport | 1 change | |
LH275 · LH1116 | 2:45 PM Milan Linate Airport | 5h30 | 8:15 PM Madrid Barajas Airport | 1 change | |
UX1060 | 3:50 PM Milan Malpensa Airport | 2h20 | 6:10 PM Madrid Barajas Airport | 0 changesdirect | |
AF1331 · AF1000 | 3:55 PM Milan Malpensa Airport | 17h15 | 9:10 AM Madrid Barajas Airport | 1 change | |
AF1331 · AF1300 | 3:55 PM Milan Malpensa Airport | 19h35 | 11:30 AM Madrid Barajas Airport | 1 change | |
AF1331 · AF1400 | 3:55 PM Milan Malpensa Airport | 7h10 | 11:05 PM Madrid Barajas Airport | 1 change | |
W46459 | 4:00 PM Milan Malpensa Airport | 2h30 | 6:30 PM Madrid Barajas Airport | 0 changesdirect | |
BA573+ BA7061 | 4:35 PM Milan Linate Airport | 5h35 | 10:10 PM Madrid Barajas Airport | 1 change | |
BA573+ BA7065 | 4:35 PM Milan Linate Airport | 6h00 | 10:35 PM Madrid Barajas Airport | 1 change | |
BA585+ BA7067 | 5:15 PM Milan Linate Airport | 5h55 | 11:10 PM Madrid Barajas Airport | 1 change | |
LH5125+ LH4154 | 5:25 PM Milan Linate Airport | 6h10 | 11:35 PM Madrid Barajas Airport | 1 change | |
SN4162+ SN3731 | 5:40 PM Milan Linate Airport | 5h50 | 11:30 PM Madrid Barajas Airport | 1 change | |
AZ2097 · AZ64 | 6:00 PM Milan Linate Airport | 6h05 | 12:05 AM Madrid Barajas Airport | 1 change | |
UX1062 | 6:20 PM Milan Malpensa Airport | 2h25 | 8:45 PM Madrid Barajas Airport | 0 changesdirect | |
AF1731 · AF1600 | 6:30 PM Milan Malpensa Airport | 20h50 | 3:20 PM Madrid Barajas Airport | 1 change | |
AF1731 · AF1400 | 6:30 PM Milan Malpensa Airport | 4h35 | 11:05 PM Madrid Barajas Airport | 1 change | |
AF1731 · AF1000 | 6:30 PM Milan Malpensa Airport | 14h40 | 9:10 AM Madrid Barajas Airport | 1 change | |
AF1731 · AF1300 | 6:30 PM Milan Malpensa Airport | 17h00 | 11:30 AM Madrid Barajas Airport | 1 change | |
SN3150 · SN3731 | 6:40 PM Milan Linate Airport | 4h50 | 11:30 PM Madrid Barajas Airport | 1 change | |
TK1876 · TK1359 | 6:50 PM Milan Malpensa Airport | 28h45 | 11:35 PM Madrid Barajas Airport | 1 change | |
TK1876 · TK1857 | 6:50 PM Milan Malpensa Airport | 15h35 | 10:25 AM Madrid Barajas Airport | 1 change | |
TK1876 · TK1357 | 6:50 PM Milan Malpensa Airport | 18h25 | 1:15 PM Madrid Barajas Airport | 1 change | |
TK1876 · TK1859 | 6:50 PM Milan Malpensa Airport | 22h05 | 4:55 PM Madrid Barajas Airport | 1 change | |
LH9491+ LH1118 | 6:55 PM Milan Linate Airport | 5h00 | 11:55 PM Madrid Barajas Airport | 1 change | |
AZ2109 · AZ64 | 7:00 PM Milan Linate Airport | 5h05 | 12:05 AM Madrid Barajas Airport | 1 change | |
IB676 | 7:10 PM Milan Malpensa Airport | 2h20 | 9:30 PM Madrid Barajas Airport | 0 changesdirect | |
FR 2752 | 7:15 PM Milan Malpensa Airport | 2h20 | 9:35 PM Madrid Barajas Airport | 0 changesdirect | |
FR 5120 | 7:25 PM Milan Bergamo Orio al Serio Airport | 2h20 | 9:45 PM Madrid Barajas Airport | 0 changesdirect | |
W46313 | 7:55 PM Milan Malpensa Airport | 2h30 | 10:25 PM Madrid Barajas Airport | 0 changesdirect | |
IB666 | 8:25 PM Milan Linate Airport | 2h25 | 10:50 PM Madrid Barajas Airport | 0 changesdirect | |
| Friday, 13 November | |||||
FR 2752 | 5:45 AM Milan Malpensa Airport | 2h20 | 8:05 AM Madrid Barajas Airport | 0 changesdirect | |
LH7433+ LH4152 | 6:05 AM Milan Malpensa Airport | 5h05 | 11:10 AM Madrid Barajas Airport | 1 change | |
IB804 | 6:20 AM Milan Malpensa Airport | 2h25 | 8:45 AM Madrid Barajas Airport | 0 changesdirect | |
KL1612 · KL1503 | 6:30 AM Milan Linate Airport | 5h40 | 12:10 PM Madrid Barajas Airport | 1 change | |
KL1612 · KL1507 | 6:30 AM Milan Linate Airport | 13h05 | 7:35 PM Madrid Barajas Airport | 1 change | |
KL1612 · KL1505 | 6:30 AM Milan Linate Airport | 9h35 | 4:05 PM Madrid Barajas Airport | 1 change | |
AF1733 · AF1600 | 6:30 AM Milan Linate Airport | 8h50 | 3:20 PM Madrid Barajas Airport | 1 change | |
AF1733 · AF1800 | 6:30 AM Milan Linate Airport | 11h15 | 5:45 PM Madrid Barajas Airport | 1 change | |
AF1733 · AF1300 | 6:30 AM Milan Linate Airport | 5h00 | 11:30 AM Madrid Barajas Airport | 1 change | |
AF1231 · AF1400 | 6:30 AM Milan Malpensa Airport | 16h35 | 11:05 PM Madrid Barajas Airport | 1 change | |
AF1231 · AF1300 | 6:30 AM Milan Malpensa Airport | 5h00 | 11:30 AM Madrid Barajas Airport | 1 change | |
AF1231 · AF1800 | 6:30 AM Milan Malpensa Airport | 11h15 | 5:45 PM Madrid Barajas Airport | 1 change | |
AF1231 · AF1600 | 6:30 AM Milan Malpensa Airport | 8h50 | 3:20 PM Madrid Barajas Airport | 1 change | |
AF1231 · AF1000 | 6:30 AM Milan Malpensa Airport | 26h40 | 9:10 AM Madrid Barajas Airport | 1 change | |
W46311 | 6:40 AM Milan Malpensa Airport | 2h30 | 9:10 AM Madrid Barajas Airport | 0 changesdirect | |
LH5639+ LH1112 | 6:55 AM Milan Malpensa Airport | 5h40 | 12:35 PM Madrid Barajas Airport | 1 change | |
TK1878 · TK1357 | 6:55 AM Milan Malpensa Airport | 30h20 | 1:15 PM Madrid Barajas Airport | 1 change | |
TK1878 · TK1359 | 6:55 AM Milan Malpensa Airport | 16h40 | 11:35 PM Madrid Barajas Airport | 1 change | |
TK1878 · TK1857 | 6:55 AM Milan Malpensa Airport | 27h30 | 10:25 AM Madrid Barajas Airport | 1 change | |
TK1878 · TK1859 | 6:55 AM Milan Malpensa Airport | 10h00 | 4:55 PM Madrid Barajas Airport | 1 change | |
SN4164+ SN3721 | 7:00 AM Milan Linate Airport | 4h45 | 11:45 AM Madrid Barajas Airport | 1 change | |
BA577 · BA462 | 7:25 AM Milan Linate Airport | 6h15 | 1:40 PM Madrid Barajas Airport | 1 change | |
IB668 | 7:55 AM Milan Linate Airport | 2h25 | 10:20 AM Madrid Barajas Airport | 0 changesdirect | |
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 Madrid?
Why should you book Milan to Madrid 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 Iberia, Malta Air, Air Europa or Vueling to find the best option for your trip from Milan to Madrid.
- 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 train, bus and flight to ensure you get the best deal for traveling from Milan to Madrid.
Why book with Omio over Edreams, Kayak or Trip?
- Compare with other providers: On Omio, you can also compare tickets for the likes of Iberia, Malta Air, Air Europa or Vueling to find the best option for your trip from Milan to Madrid.
- Multiple modes of transport: Omio allows you to compare travel options including train, bus and flight to find the ideal travel option from Milan to Madrid.
Airlines: Air France, Iberia, KLM, ITA, Lufthansa, Qatar Airways, Brussels Airlines, Air Europa, British Airways, Ryanair from Milan to MadridFind the best flights between Milan to Madrid with Omio's travel partners Air France, Iberia, KLM, ITA, Lufthansa, Qatar Airways, Brussels Airlines, Air Europa, British Airways, Ryanair from $18. We can find you the best deals, schedules and tickets when comparing and booking the best trip.
Air France
ITA
Lufthansa
Qatar Airways
British Airways
Iberia
KLM
Brussels Airlines
Air Europa
Ryanair
Companies, tickets, and onboard amenities between Milan and Madrid
Review the details behind your booking, from operators and ticket rules to luggage, onboard amenities, accessibility, and route-specific travel policies.
FAQs: Milan to Madrid flights
Find answers to the most common questions about traveling from Milan to Madrid 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 Madrid, this guide helps you travel smarter and with confidence.

popular airports
Important Stations and Airports in Milan and Madrid
Most Milan to Madrid flights use the Milan Linate Airport to Madrid Barajas Airport airport pair. Use this guide to compare Milan and Madrid airports on this route, check city-centre transport, alongside checking practicalities like airport facilities and services.
Which Milan airport do flights to Madrid leave from?
Getting to Milan Linate Airport from Milan city centre
Milan Linate Airport is 6 km from Milan city centre. Public transport options include:
Milan Linate Airport airport facilities and services
Milan Linate Airport has practical services for this route, including Wifi, Shopping, Parking, ATM, Taxis, Accessibility, WC, Shower, Lounge and Lost and Found Office.
Wi-Fi and ATMs
Free Wi-Fi available throughout the airport. ATMs are located in the arrivals and departures areas.
Luggage and lost property
Lost and found is available at the station.
Parking, taxis and toilets
Available at Milan Linate Airport: Parking, Taxis, WC.
Accessibility
Accessibility facilities are available at Milan Linate Airport: Ramps, assistance.
Getting to Milan Malpensa Airport from Milan city centre
Milan Malpensa Airport is 2 km from Milan city centre. Public transport options include:
Milan Malpensa Airport airport facilities and services
Milan Malpensa Airport has practical services for this route, including Wifi, Shopping, Parking, ATM, Taxis, Accessibility, WC, Shower, Lounge and Lost and Found Office.
Wi-Fi and ATMs
Free Wi-Fi available throughout the airport. ATMs are located in both terminals, near check-inas and gates.
Luggage and lost property
Lost and found is available at the station.
Parking, taxis and toilets
Available at Milan Malpensa Airport: Parking, Taxis, WC.
Accessibility
Accessibility facilities are available at Milan Malpensa Airport: Elevators, ramps.
Getting to Milan Bergamo Orio al Serio Airport from Milan city centre
Milan Bergamo Orio al Serio Airport is 1 km from Milan city centre. Public transport options include:
Milan Bergamo Orio al Serio Airport airport facilities and services
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.
Wi-Fi and ATMs
Free Wi-Fi available throughout the airport. ATMs are located in the arrivals and departures areas.
Luggage and lost property
Lost and found is available at the station.
Parking, taxis and toilets
Available at Milan Bergamo Orio al Serio Airport: Parking, Taxis, WC.
Accessibility
Accessibility facilities are available at Milan Bergamo Orio al Serio Airport: Elevators, ramps.
Which Madrid airport do flights from Milan arrive at?
Getting to Madrid Barajas Airport from Madrid city centre
Madrid Barajas Airport is 12 km from Madrid city centre. Public transport options include:
Madrid Barajas Airport airport facilities and services
Madrid Barajas Airport has practical services for this route, including Wifi, Shopping, Parking, ATM, Taxis, Accessibility, WC, Shower, Lounge and Lost and Found Office.
Wi-Fi and ATMs
Free Wi-Fi available throughout the airport. ATMs are located in all terminals.
Luggage and lost property
Lost and found is available at the station.
Parking, taxis and toilets
Available at Madrid Barajas Airport: Parking, Taxis, WC.
Accessibility
Accessibility facilities are available at Madrid Barajas Airport: Ramps, assistance.
More options for your journey from Milan to Madrid
Here are some other resources that might have the information you need












