Journey information
Overview: Milan to Porto flight
Flights from Milan to Porto depart on average 80 times per day, taking around 5h 25m. Cheap flight tickets for this journey start at 93S$ if you book in advance.
There are 3 flights per day. The earliest flight runs at 02:50, the last at 23:55. The fastest flight covers the 1514 km distance in 2h 40m. November is the cheapest month to fly.
Distance 1514 km |
Average flight duration 5h 25m |
Cheapest ticket price 93S$ |
Flights per day 80 |
Direct flights 3 |
Fastest flight 2h 40m |
First flight 2:50 AM |
Last flight 11:55 PM |
Cheapest Month Nov |
Cheapest Day Sat |
High Season Jul - Sept |
Low Season Jan - Mar |
Busiest Day Thu |
Least Busy Day Wed |
Best time to book 42 days |
The cheapest and fastest flights from Milan to Porto
Cheapest price
164S$
Average price
661S$
Fastest journey
2 h 35 m
Average duration
3 h 3 m
Flights per day
96
Distance
1514 km
The best way to find a cheap flight ticket from Milan to Porto is to book your journey as far in advance as possible and to avoid travelling at rush hour.
The average ticket from Milan to Porto will cost around 661S$ if you buy it on the day, but you can find cheap flight tickets today for only 164S$.
Of the 96 flights that leave Milan for Porto every day 4 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
These direct flights cover the 1514 km distance in an average of 3 h 3 m but if you time it right, some flights will get you there in just 2 h 35 m .
The slowest flights will take 4 h 35 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.
UX1062 · UX11476:15 PM13h35Milan Malpensa Airport6:50 AMPorto Airport164 S$1One-way1 change
U2545311:20 AM2h35Milan Linate Airport12:55 PMPorto Airport174 S$1One-way0 changes
UX1066 · UX114711:05 AM20h45Milan Malpensa Airport6:50 AMPorto Airport175 S$1One-way1 change
UX1060 · UX11473:45 PM16h05Milan Malpensa Airport6:50 AMPorto Airport175 S$1One-way1 change
FR 40429:05 PM2h45Milan Bergamo Orio al Serio Airport10:50 PMPorto Airport196 S$1One-way0 changes
U2545311:20 AM2h35Milan Linate Airport12:55 PMPorto Airport174 S$1One-way0 changes
FR 401810:50 AM2h40Milan Malpensa Airport12:30 PMPorto Airport267 S$1One-way0 changes
FR 895210:15 PM2h40Milan Malpensa Airport11:55 PMPorto Airport217 S$1One-way0 changes
FR 40429:05 PM2h45Milan Bergamo Orio al Serio Airport10:50 PMPorto Airport196 S$1One-way0 changes
UX1060 · UX11413:45 PM4h35Milan Malpensa Airport7:20 PMPorto Airport439 S$1One-way1 change
Travel Information
Compare coach and flight for Milan to Porto
Omio recommends booking the flight as it is the most popular option from Milan to Porto among Omio's users. If you are prioritising price take the coach with prices starting from 99S$. For those with little time consider booking a flight which can get you there in 5h 25m. In case you are seeking to minimise your carbon footprint the coach is your best bet as it emits only 1.5 - 3.8kg. The ticket price range depends on the travel mode: a coach costs an average of 99S$, and a flight costs an average of 93S$.
Distance: 1514 km
Compare flight with
Most popular Flight | Coach |
|---|---|
240S$ Average Price | 204S$ Average Price Cheapest |
8h 25m Average total duration Fastest 5h 25m Onboard + 3h 0m Additional time* | 22h 33m Average total duration 22h 3m Onboard + 30m Additional time* |
4.5 - 9.1kg CO2 emissions | 1.5 - 3.8kg 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 Porto flight times
The table below shows live departures for Milan to Porto flights for today, Monday, 29 June. You can also manually refresh the results below to see updated flight journeys.
| Provider | Departs | Duration | Arrives | Changes | Tickets |
|---|---|---|---|---|---|
LH275 · LH1180 | 3:20 PM Milan Linate Airport | 8h35 | 10:55 PM Porto Airport | 1 change | |
VY6341 · VY8480 | 3:30 PM Milan Malpensa Airport | 6h50 | 9:20 PM Porto Airport | 1 change | |
UX1060 · UX1147 | 3:45 PM Milan Malpensa Airport | 16h05 | 6:50 AM Porto Airport | 1 change | |
UX1060 · UX1145 | 3:45 PM Milan Malpensa Airport | 20h05 | 10:50 AM Porto Airport | 1 change | |
UX1060 · UX1141 | 3:45 PM Milan Malpensa Airport | 4h35 | 7:20 PM Porto Airport | 1 change | |
VY6333 · VY8480 | 4:30 PM Milan Malpensa Airport | 5h50 | 9:20 PM Porto Airport | 1 change | |
KL1618 · KL1577 | 4:50 PM Milan Linate Airport | 6h25 | 10:15 PM Porto Airport | 1 change | |
TP825 · TP1936 | 5:25 PM Milan Malpensa Airport | 6h35 | 11:00 PM Porto Airport | 1 change | |
TP825 · TP1938 | 5:25 PM Milan Malpensa Airport | 8h15 | 12:40 AM Porto Airport | 1 change | |
TP825 · TP1920 | 5:25 PM Milan Malpensa Airport | 15h25 | 7:50 AM Porto Airport | 1 change | |
LH5125+ LH1788 | 5:35 PM Milan Linate Airport | 6h50 | 11:25 PM Porto Airport | 1 change | |
UX1062 · UX1145 | 6:15 PM Milan Malpensa Airport | 17h35 | 10:50 AM Porto Airport | 1 change | |
UX1062 · UX1147 | 6:15 PM Milan Malpensa Airport | 13h35 | 6:50 AM Porto Airport | 1 change | |
UX1062 · UX1143 | 6:15 PM Milan Malpensa Airport | 22h00 | 3:15 PM Porto Airport | 1 change | |
LH1180+ LH277 | 6:15 PM Milan Linate Airport | 5h40 | 10:55 PM Porto Airport | 1 change | |
VY6335 · VY8476 | 6:20 PM Milan Malpensa Airport | 14h40 | 8:00 AM Porto Airport | 1 change | |
LH1780+ LH1855+ LH6976 | 6:25 PM Milan Linate Airport | 7h15 | 12:40 AM Porto Airport | 2 changes | |
LH1788+ LH1855 | 6:25 PM Milan Linate Airport | 6h00 | 11:25 PM Porto Airport | 1 change | |
LH255 · LH1180 | 6:50 PM Milan Malpensa Airport | 5h05 | 10:55 PM Porto Airport | 1 change | |
VY6339 · VY8476 | 7:15 PM Milan Malpensa Airport | 13h45 | 8:00 AM Porto Airport | 1 change | |
LX1623+ LX2060 | 7:25 PM Milan Malpensa Airport | 13h30 | 7:55 AM Porto Airport | 1 change | |
FR 4638 | 8:25 PM Milan Bergamo Orio al Serio Airport | 2h45 | 10:10 PM Porto Airport | 0 changesdirect | |
VY6337 · VY8476 | 9:45 PM Milan Malpensa Airport | 11h15 | 8:00 AM Porto Airport | 1 change | |
| Tuesday, 30 June | |||||
TP829 · TP1928 | 5:50 AM Milan Malpensa Airport | 10h10 | 3:00 PM Porto Airport | 1 change | |
LX1639+ LX2066 | 5:50 AM Milan Malpensa Airport | 6h35 | 11:25 AM Porto Airport | 1 change | |
TP829 · TP1924 | 5:50 AM Milan Malpensa Airport | 5h10 | 10:00 AM Porto Airport | 1 change | |
TP829 · TP1932 | 5:50 AM Milan Malpensa Airport | 14h10 | 7:00 PM Porto Airport | 1 change | |
LH5639+ LH1176 | 6:10 AM Milan Malpensa Airport | 6h05 | 11:15 AM Porto Airport | 1 change | |
LH7433+ LH1782 | 6:20 AM Milan Malpensa Airport | 5h00 | 10:20 AM Porto Airport | 1 change | |
AF1733 · AF1528 | 6:25 AM Milan Linate Airport | 10h00 | 3:25 PM Porto Airport | 1 change | |
AF1733 · AF1516 | 6:25 AM Milan Linate Airport | 16h50 | 10:15 PM Porto Airport | 1 change | |
KL1612 · KL1573 | 6:40 AM Milan Linate Airport | 9h50 | 3:30 PM Porto Airport | 1 change | |
KL1612 · KL1577 | 6:40 AM Milan Linate Airport | 16h35 | 10:15 PM Porto Airport | 1 change | |
AF1131 · AF1528 | 6:45 AM Milan Malpensa Airport | 9h40 | 3:25 PM Porto Airport | 1 change | |
AF1131 · AF1516 | 6:45 AM Milan Malpensa Airport | 16h30 | 10:15 PM Porto Airport | 1 change | |
LH281+ LH1176 | 6:50 AM Milan Linate Airport | 5h25 | 11:15 AM Porto Airport | 1 change | |
OS530 · OS491 | 7:00 AM Milan Linate Airport | 6h40 | 12:40 PM Porto Airport | 1 change | |
SN4164+ SN3811 | 7:00 AM Milan Linate Airport | 8h05 | 2:05 PM Porto Airport | 1 change | |
BA581+ BA2668 | 7:25 AM Milan Linate Airport | 13h40 | 8:05 PM Porto Airport | 1 change | |
BA581+ BA7069+ IB1153 | 7:25 AM Milan Linate Airport | 13h35 | 8:00 PM Porto Airport | 2 changes | |
BA581+ BA7055+ IB1151 | 7:25 AM Milan Linate Airport | 9h35 | 4:00 PM Porto Airport | 2 changes | |
IB668 · IB1151 | 7:50 AM Milan Linate Airport | 9h10 | 4:00 PM Porto Airport | 1 change | |
IB668 · IB1153 | 7:50 AM Milan Linate Airport | 13h10 | 8:00 PM Porto Airport | 1 change | |
IB668 · IB1149 | 7:50 AM Milan Linate Airport | 4h55 | 11:45 AM Porto Airport | 1 change | |
EW2712+ EW2821 | 8:00 AM Milan Malpensa Airport | 7h00 | 2:00 PM Porto Airport | 1 change | |
BA591+ BA2668 | 8:30 AM Milan Malpensa Airport | 12h35 | 8:05 PM Porto Airport | 1 change | |
SN3154+ SN3811 | 8:35 AM Milan Malpensa Airport | 6h30 | 2:05 PM Porto Airport | 1 change | |
LH247 · LH1178 | 9:00 AM Milan Malpensa Airport | 7h40 | 3:40 PM Porto Airport | 1 change | |
AF1831 · AF1516 | 9:15 AM Milan Malpensa Airport | 14h00 | 10:15 PM Porto Airport | 1 change | |
AF1831 · AF1528 | 9:15 AM Milan Malpensa Airport | 7h10 | 3:25 PM Porto Airport | 1 change | |
SN3146 · SN3809 | 9:25 AM Milan Linate Airport | 7h45 | 4:10 PM Porto Airport | 1 change | |
SN3146 · SN3811 | 9:25 AM Milan Linate Airport | 5h40 | 2:05 PM Porto Airport | 1 change | |
AF1516+ AF1213 | 9:45 AM Milan Linate Airport | 13h30 | 10:15 PM Porto Airport | 1 change | |
VY6331 · VY8480 | 10:05 AM Milan Malpensa Airport | 12h15 | 9:20 PM Porto Airport | 1 change | |
VY6331 · VY8478 | 10:05 AM Milan Malpensa Airport | 7h05 | 4:10 PM Porto Airport | 1 change | |
VY6331 · VY8482 | 10:05 AM Milan Malpensa Airport | 5h10 | 2:15 PM Porto Airport | 1 change | |
IB672 · IB1153 | 10:25 AM Milan Malpensa Airport | 10h35 | 8:00 PM Porto Airport | 1 change | |
IB672 · IB1151 | 10:25 AM Milan Malpensa Airport | 6h35 | 4:00 PM Porto Airport | 1 change | |
LH271 · LH1178 | 10:35 AM Milan Linate Airport | 6h05 | 3:40 PM Porto Airport | 1 change | |
LX1613 · LX2806+ LX4588 | 10:40 AM Milan Malpensa Airport | 7h40 | 5:20 PM Porto Airport | 2 changes | |
LX1613 · LX2806 · LX2074 | 10:40 AM Milan Malpensa Airport | 7h45 | 5:25 PM Porto Airport | 2 changes | |
FR 4018 | 10:50 AM Milan Malpensa Airport | 2h40 | 12:30 PM Porto Airport | 0 changesdirect | |
VY6345 · VY8480 | 10:55 AM Milan Malpensa Airport | 11h25 | 9:20 PM Porto Airport | 1 change | |
VY6345 · VY8478 | 10:55 AM Milan Malpensa Airport | 6h15 | 4:10 PM Porto Airport | 1 change | |
KL1614 · KL1577 | 11:00 AM Milan Linate Airport | 12h15 | 10:15 PM Porto Airport | 1 change | |
KL1614 · KL1573 | 11:00 AM Milan Linate Airport | 5h30 | 3:30 PM Porto Airport | 1 change | |
KL1614 · KL1571 | 11:00 AM Milan Linate Airport | 24h55 | 10:55 AM Porto Airport | 1 change | |
UX1066 · UX1147 | 11:05 AM Milan Malpensa Airport | 20h45 | 6:50 AM Porto Airport | 1 change | |
UX1066 · UX1143 | 11:05 AM Milan Malpensa Airport | 5h10 | 3:15 PM Porto Airport | 1 change | |
UX1066 · UX1141 | 11:05 AM Milan Malpensa Airport | 9h15 | 7:20 PM Porto Airport | 1 change | |
BA569+ BA2668 | 11:10 AM Milan Linate Airport | 9h55 | 8:05 PM Porto Airport | 1 change | |
LH249 · LH1178 | 11:20 AM Milan Malpensa Airport | 5h20 | 3:40 PM Porto Airport | 1 change | |
U25453 | 11:20 AM Milan Linate Airport | 2h35 | 12:55 PM Porto Airport | 0 changesdirect | |
AF1331 · AF1516 | 11:25 AM Milan Malpensa Airport | 11h50 | 10:15 PM Porto Airport | 1 change | |
AF1331 · AF1528 | 11:25 AM Milan Malpensa Airport | 5h00 | 3:25 PM Porto Airport | 1 change | |
IB664 · IB1153 | 11:40 AM Milan Linate Airport | 9h20 | 8:00 PM Porto Airport | 1 change | |
IB664 · IB1151 | 11:40 AM Milan Linate Airport | 5h20 | 4:00 PM Porto Airport | 1 change | |
TP823 · TP1934 | 11:50 AM Milan Malpensa Airport | 9h35 | 8:25 PM Porto Airport | 1 change | |
TP823 · TP1936 | 11:50 AM Milan Malpensa Airport | 12h05 | 10:55 PM Porto Airport | 1 change | |
TP823 · TP1932 | 11:50 AM Milan Malpensa Airport | 8h10 | 7:00 PM Porto Airport | 1 change | |
AF1413 · AF1516 | 12:20 PM Milan Linate Airport | 10h55 | 10:15 PM Porto Airport | 1 change | |
KL1616 · KL1577 | 1:00 PM Milan Linate Airport | 10h15 | 10:15 PM Porto Airport | 1 change | |
KL1616 · KL1571 | 1:00 PM Milan Linate Airport | 22h55 | 10:55 AM Porto Airport | 1 change | |
VY6343 · VY8480 | 1:55 PM Milan Malpensa Airport | 8h25 | 9:20 PM Porto Airport | 1 change | |
IB674 · IB1153 | 2:25 PM Milan Malpensa Airport | 6h35 | 8:00 PM Porto Airport | 1 change | |
LX1629+ LX4592 | 2:55 PM Milan Malpensa Airport | 7h35 | 9:30 PM Porto Airport | 1 change | |
AF1013 · AF1516 | 2:55 PM Milan Linate Airport | 8h20 | 10:15 PM Porto Airport | 1 change | |
AF1013 · AF1528 | 2:55 PM Milan Linate Airport | 25h30 | 3:25 PM Porto Airport | 1 change | |
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 Porto?
Compare prices and tickets Milan to Porto by coach or flight
Compare 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.
30 Jun
01 Jul
02 Jul
03 Jul
04 Jul
05 Jul
06 Jul
07 Jul
08 Jul
09 Jul
10 Jul
11 Jul
12 Jul
13 Jul
14 Jul
15 Jul
16 Jul
17 Jul
18 Jul
19 Jul
20 Jul
Why should you book Milan to Porto 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, easyJet, Iberia or Air Europa to find the best option for your trip from Milan to Porto.
- 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 Porto.
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, easyJet, Iberia or Air Europa to find the best option for your trip from Milan to Porto.
- Multiple modes of transport: Omio allows you to compare travel options including bus and flight to find the ideal travel option from Milan to Porto.
Airlines: Ryanair, Malta Air, easyJet, Iberia, Air Europa, Vueling, TAP Portugal, KLM, Air France, Lufthansa from Milan to PortoFind the best flights between Milan to Porto with Omio's travel partners Ryanair, Malta Air, easyJet, Iberia, Air Europa, Vueling, TAP Portugal, KLM, Air France, Lufthansa from 93S$. We can find you the best deals, schedules and tickets when comparing and booking the best trip.
Air France
Lufthansa
Iberia
Air Europa
Vueling
TAP Portugal
KLM
Malta Air
easyJet
Ryanair
FAQs: Milan to Porto flights
Find answers to the most common questions about traveling from Milan to Porto 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 Porto, this guide helps you travel smarter and with confidence.

popular airports
Important Stations and Airports in Milan and Porto
- 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 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, 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 in the main terminal, including duty-free and local brands
- Short-term and long-term parking available, approximately 1.2€ per hour
- Available outside the terminal
- Elevators, ramps
- Available throughout the airport
- No
- Lounges available, including ANA Lounge
- Located in the arrivals area
- Metro: Line E
- Bus: 601, 602, 604, 3M
More options for your journey from Milan to Porto
Here are some other resources that might have the information you need




















