Journey information
Overview: Milan to Porto flight
Flights from Milan to Porto depart on average 76 times per day, taking around 3h 40m. Cheap flight tickets for this journey start at €25 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 30m. April is the cheapest month to fly.
Distance 1514 km |
Average flight duration 3h 40m |
Cheapest ticket price €25 |
Flights per day 76 |
Direct flights 3 |
Fastest flight 2h 30m |
Cheapest month to travel April |
First flight 02:50 |
Last flight 23:55 |
The cheapest and fastest flights from Milan to Porto
Cheapest price
€89
Average price
€341
Fastest journey
2 h 40 m
Average duration
3 h 21 m
Flights per day
75
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 traveling at rush hour.
The average ticket from Milan to Porto will cost around €341 if you buy it on the day, but the cheapest tickets can be found for only €89.
Of the 75 flights that leave Milan for Porto onFri, Nov 28, 3 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
On Fri, Nov 28 the direct flights cover the 1514 km distance in an average of 3 h 21 m but if you time it right, some flights will get you there in just 2 h 40 m .
On Fri, Nov 28 the longest flights will take 4 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.
U21993
FR 4042
TP829 · TP1924
FR 4638
VY6341 · VY8474
FR 4042
FR 4638
U21993
VY6335 · VY8478
IB5761 · IB5102Travel Information
Compare bus 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 flight with prices starting from €25. For those with little time consider booking a flight which can get you there in 3h 40m. In case you are seeking to minimise your carbon footprint the bus is your best bet as it emits only 1.5 - 3.8kg. The ticket price range depends on the travel mode: a flight costs an average of €25, and a bus costs an average of €75.
Distance: 1514 km
Compare flight with
Most popular Flight | Bus |
|---|---|
€142 Average price Cheapest | €174 Average price |
6h 40m Average total duration Fastest 3h 40m Onboard + 3h 0m Additional time* | 31h 11m Average total duration 30h 41m 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, Thursday, November 27. You can also manually refresh the results below to see updated flight journeys.
| Provider | Departs | Duration | Arrives | Transfers | Tickets |
|---|---|---|---|---|---|
LH279 · LH1166+ LH6968 | 5:00 AM Milan Linate Airport | 10h05 | 3:05 PM Porto Airport | 2 transfers | |
LH279 · LH1176 | 5:00 AM Milan Linate Airport | 6h40 | 11:40 AM Porto Airport | 1 transfer | |
TP829 · TP1926 | 5:20 AM Milan Malpensa Airport | 7h45 | 1:05 PM Porto Airport | 1 transfer | |
TP829 · TP1924 | 5:20 AM Milan Malpensa Airport | 5h45 | 11:05 AM Porto Airport | 1 transfer | |
AF1733 · AF1528 | 5:30 AM Milan Linate Airport | 5h00 | 10:30 AM Porto Airport | 1 transfer | |
KL1612+ KL2607 | 5:30 AM Milan Linate Airport | 13h50 | 7:20 PM Porto Airport | 1 transfer | |
KL1612+ KL1573 | 5:30 AM Milan Linate Airport | 9h55 | 3:25 PM Porto Airport | 1 transfer | |
KL1612+ KL1577 | 5:30 AM Milan Linate Airport | 16h55 | 10:25 PM Porto Airport | 1 transfer | |
LX1639+ LX2066 | 5:45 AM Milan Malpensa Airport | 5h30 | 11:15 AM Porto Airport | 1 transfer | |
FR 4042 | 5:55 AM Milan Bergamo Orio al Serio Airport | 2h40 | 8:35 AM Porto Airport | 0 transfersDirect | |
LH5639+ LH1166+ LH6968 | 5:55 AM Milan Malpensa Airport | 9h10 | 3:05 PM Porto Airport | 2 transfers | |
LH5639+ LH1176 | 5:55 AM Milan Malpensa Airport | 5h45 | 11:40 AM Porto Airport | 1 transfer | |
LH5639+ LH98 · LH1782 | 5:55 AM Milan Malpensa Airport | 7h20 | 1:15 PM Porto Airport | 2 transfers | |
SN4164+ SN3811 | 6:00 AM Milan Linate Airport | 6h05 | 12:05 PM Porto Airport | 1 transfer | |
IB668 · IB545 | 6:55 AM Milan Linate Airport | 4h50 | 11:45 AM Porto Airport | 1 transfer | |
IB668 · IB1151 | 6:55 AM Milan Linate Airport | 9h05 | 4:00 PM Porto Airport | 1 transfer | |
U23881 | 8:40 AM Milan Malpensa Airport | 2h45 | 11:25 AM Porto Airport | 0 transfersDirect | |
LH1851+ LH6984 · LH6960 | 8:45 AM Milan Linate Airport | 9h15 | 6:00 PM Porto Airport | 2 transfers | |
AF1213+ AF1528 | 8:45 AM Milan Linate Airport | 25h40 | 10:25 AM Porto Airport | 1 transfer | |
LH9513+ LH6984 · LH6960 | 8:50 AM Milan Malpensa Airport | 9h10 | 6:00 PM Porto Airport | 2 transfers | |
IB5664 · IB5102 | 9:15 AM Milan Malpensa Airport | 12h00 | 9:15 PM Porto Airport | 1 transfer | |
VY6331 · VY8478 | 9:15 AM Milan Malpensa Airport | 12h00 | 9:15 PM Porto Airport | 1 transfer | |
IB672 · IB549 | 9:30 AM Milan Malpensa Airport | 10h30 | 8:00 PM Porto Airport | 1 transfer | |
IB672 · IB1151 | 9:30 AM Milan Malpensa Airport | 6h30 | 4:00 PM Porto Airport | 1 transfer | |
LH6905+ LH6994 · LH6960 | 9:45 AM Milan Linate Airport | 8h15 | 6:00 PM Porto Airport | 2 transfers | |
LH6905+ LH1178 | 9:45 AM Milan Linate Airport | 5h40 | 3:25 PM Porto Airport | 1 transfer | |
UX1066 · UX1143 | 9:50 AM Milan Malpensa Airport | 5h25 | 3:15 PM Porto Airport | 1 transfer | |
UX1066 · UX1147 | 9:50 AM Milan Malpensa Airport | 21h00 | 6:50 AM Porto Airport | 1 transfer | |
UX1066 · UX1141 | 9:50 AM Milan Malpensa Airport | 9h30 | 7:20 PM Porto Airport | 1 transfer | |
KL1614+ KL2607 | 9:55 AM Milan Linate Airport | 9h25 | 7:20 PM Porto Airport | 1 transfer | |
KL1614+ KL1573 | 9:55 AM Milan Linate Airport | 5h30 | 3:25 PM Porto Airport | 1 transfer | |
KL1614+ KL1571 | 9:55 AM Milan Linate Airport | 24h35 | 10:30 AM Porto Airport | 1 transfer | |
KL1614+ KL1577 | 9:55 AM Milan Linate Airport | 12h30 | 10:25 PM Porto Airport | 1 transfer | |
U21993 | 10:20 AM Milan Linate Airport | 2h45 | 1:05 PM Porto Airport | 0 transfersDirect | |
IB664 · IB549 | 10:35 AM Milan Linate Airport | 9h25 | 8:00 PM Porto Airport | 1 transfer | |
LH247 · LH1178 | 10:35 AM Milan Malpensa Airport | 4h50 | 3:25 PM Porto Airport | 1 transfer | |
IB664 · IB1151 | 10:35 AM Milan Linate Airport | 5h25 | 4:00 PM Porto Airport | 1 transfer | |
AF1831+ AF1528 | 10:35 AM Milan Malpensa Airport | 23h50 | 10:25 AM Porto Airport | 1 transfer | |
TP823 · TP1930 | 10:55 AM Milan Malpensa Airport | 6h05 | 5:00 PM Porto Airport | 1 transfer | |
TP823 · TP1934 | 10:55 AM Milan Malpensa Airport | 8h05 | 7:00 PM Porto Airport | 1 transfer | |
TP823 · TP1932 | 10:55 AM Milan Malpensa Airport | 7h05 | 6:00 PM Porto Airport | 1 transfer | |
AF1413+ AF1528 | 11:20 AM Milan Linate Airport | 23h05 | 10:25 AM Porto Airport | 1 transfer | |
AF1131+ AF1528 | 11:35 AM Milan Malpensa Airport | 22h50 | 10:25 AM Porto Airport | 1 transfer | |
KL1598+ KL2607 | 12:00 PM Milan Linate Airport | 7h20 | 7:20 PM Porto Airport | 1 transfer | |
KL1598+ KL1577 | 12:00 PM Milan Linate Airport | 10h25 | 10:25 PM Porto Airport | 1 transfer | |
KL1598+ KL1571 | 12:00 PM Milan Linate Airport | 22h30 | 10:30 AM Porto Airport | 1 transfer | |
LH9449+ LH6992 · LH6964 | 12:20 PM Milan Malpensa Airport | 9h40 | 10:00 PM Porto Airport | 2 transfers | |
IB674 · IB549 | 1:25 PM Milan Malpensa Airport | 6h35 | 8:00 PM Porto Airport | 1 transfer | |
LH5637+ LH6956 · LH6964 | 1:40 PM Milan Malpensa Airport | 8h20 | 10:00 PM Porto Airport | 2 transfers | |
LH281+ LH6956 · LH6964 | 1:50 PM Milan Linate Airport | 8h10 | 10:00 PM Porto Airport | 2 transfers | |
AF1013+ AF1528 | 1:55 PM Milan Linate Airport | 20h30 | 10:25 AM Porto Airport | 1 transfer | |
IB5767 · IB5102 | 2:00 PM Milan Malpensa Airport | 7h15 | 9:15 PM Porto Airport | 1 transfer | |
VY6339 · VY8478 | 2:00 PM Milan Malpensa Airport | 7h15 | 9:15 PM Porto Airport | 1 transfer | |
AF1331+ AF1528 | 2:55 PM Milan Malpensa Airport | 19h30 | 10:25 AM Porto Airport | 1 transfer | |
KL1616+ KL1577 | 3:50 PM Milan Linate Airport | 6h35 | 10:25 PM Porto Airport | 1 transfer | |
KL1616+ KL1571 | 3:50 PM Milan Linate Airport | 18h40 | 10:30 AM Porto Airport | 1 transfer | |
KL1616 · KL1573 | 3:50 PM Milan Linate Airport | 23h35 | 3:25 PM Porto Airport | 1 transfer | |
LH1857+ LH1784 | 4:25 PM Milan Malpensa Airport | 7h15 | 11:40 PM Porto Airport | 1 transfer | |
LH5125+ LH1784 | 4:30 PM Milan Linate Airport | 7h10 | 11:40 PM Porto Airport | 1 transfer | |
TP827 · TP1936 | 4:45 PM Milan Malpensa Airport | 5h15 | 10:00 PM Porto Airport | 1 transfer | |
TP827 · TP1920 | 4:45 PM Milan Malpensa Airport | 15h00 | 7:45 AM Porto Airport | 1 transfer | |
TP827 · TP1922 | 4:45 PM Milan Malpensa Airport | 17h10 | 9:55 AM Porto Airport | 1 transfer | |
LH275 · LH1180 | 4:50 PM Milan Linate Airport | 5h35 | 10:25 PM Porto Airport | 1 transfer | |
IB5761 · IB5102 | 4:55 PM Milan Malpensa Airport | 4h20 | 9:15 PM Porto Airport | 1 transfer | |
VY6335 · VY8474 | 4:55 PM Milan Malpensa Airport | 15h15 | 8:10 AM Porto Airport | 1 transfer | |
VY6335 · VY8478 | 4:55 PM Milan Malpensa Airport | 4h20 | 9:15 PM Porto Airport | 1 transfer | |
UX1062 · UX1143 | 5:20 PM Milan Malpensa Airport | 21h55 | 3:15 PM Porto Airport | 1 transfer | |
UX1062 · UX1147 | 5:20 PM Milan Malpensa Airport | 13h30 | 6:50 AM Porto Airport | 1 transfer | |
UX1062 · UX1145 | 5:20 PM Milan Malpensa Airport | 17h30 | 10:50 AM Porto Airport | 1 transfer | |
AF1731+ AF1528 | 5:25 PM Milan Malpensa Airport | 17h00 | 10:25 AM Porto Airport | 1 transfer | |
LH6903+ LH1180 | 5:35 PM Milan Malpensa Airport | 4h50 | 10:25 PM Porto Airport | 1 transfer | |
LH1855 · LH1784 | 6:40 PM Milan Linate Airport | 5h00 | 11:40 PM Porto Airport | 1 transfer | |
AF1631+ AF1528 | 6:50 PM Milan Malpensa Airport | 15h35 | 10:25 AM Porto Airport | 1 transfer | |
AF1313+ AF1528 | 7:35 PM Milan Linate Airport | 14h50 | 10:25 AM Porto Airport | 1 transfer | |
FR 4018 | 7:50 PM Milan Malpensa Airport | 2h40 | 10:30 PM Porto Airport | 0 transfersDirect | |
VY6341 · VY8480 | 8:00 PM Milan Malpensa Airport | 13h35 | 9:35 AM Porto Airport | 1 transfer | |
VY6341 · VY8474 | 8:00 PM Milan Malpensa Airport | 12h10 | 8:10 AM Porto Airport | 1 transfer | |
KL1618+ KL1573 | 8:20 PM Milan Linate Airport | 19h05 | 3:25 PM Porto Airport | 1 transfer | |
KL1618 · KL1571 | 8:20 PM Milan Linate Airport | 14h10 | 10:30 AM Porto Airport | 1 transfer | |
VY6337 · VY8474 | 8:55 PM Milan Malpensa Airport | 11h15 | 8:10 AM Porto Airport | 1 transfer | |
VY6337 · VY8480 | 8:55 PM Milan Malpensa Airport | 12h40 | 9:35 AM Porto Airport | 1 transfer | |
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 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.
Nov 27
Nov 28
Nov 29
Nov 30
Dec 01
Dec 02
Dec 03
Dec 04
Dec 05
Dec 06
Dec 07
Dec 08
Dec 09
Dec 10
Dec 11
Dec 12
Dec 13
Dec 14
Dec 15
Dec 16
Dec 17
Airlines: Ryanair, easyJet, KM Malta Airlines, Air Europa, Vueling Airlines, Wizz Air, Iberia, TAP Portugal, KLM, Lufthansa from Milan to PortoFind the best flights between Milan to Porto with Omio's travel partners Ryanair, easyJet, KM Malta Airlines, Air Europa, Vueling Airlines, Wizz Air, Iberia, TAP Portugal, KLM, Lufthansa from €25. We can find you the best deals, schedules and tickets when comparing and booking the best trip.
Lufthansa
Air Europa
Vueling Airlines
Iberia
TAP Portugal
KLM
easyJet
KM Malta Airlines
Ryanair
Wizz Air
Milan to Porto Flights: An Overview
Traveling from Italy's northern hub to northern Portugal could hardly be easier, thanks to numerous daily flights from Milan to Porto. Direct flights cover the 1,500 kilometer distance between the two cities in between two hours 35 minutes and two hours 45 minutes, while the fastest services with a change will take four hours 30 minutes. Travelers can expect a choice of 3-4 direct flights during the week, and four options on Saturdays and Sundays. And they will also have plenty of indirect flights to choose from, which could be suitable alternatives, giving travelers a tonne of choice when planning their vacation.
Which airlines fly from Milan to Porto?
Two major airlines provide direct flights from Milan to Porto, meaning that travelers will have a mix of low cost and premium flights to choose from. TAP operates a year-round schedule and provides the most frequent service, while the budget operator Ryanair offers an alternative. If direct flights with those dependable airlines aren't available, indirect options can be booked with a diverse range of airlines, including Iberia and Brussels Airlines. Both fly to Porto with a single stop, generally in Madrid or Brussels.
How long is the flight from Milan to Porto?
When they need to fly from Milan to Porto, travelers won't generally need to spend too long onboard a plane. The direct journey time between the two cities fluctuates a little, but will be between two hours 35 minutes and two hours 45 minutes. When passengers choose indirect journeys, flight times will be slightly extended, but should still be manageable in many cases. The fastest indirect flights take four hours 30 minutes to reach Porto, and many take less than six hours. However, there will be a few with journey times above 10 hours, meaning that customers should take care to book the fastest services possible.
How many flights are there from Milan to Porto?
Flights leave Milan for Porto every day of the year, and there should be convenient departures for those who need to travel in the morning, afternoon, or evening. During the week, travelers can choose between 3-4 direct flights, and there will also be four options on Saturdays and Sundays. These direct flights will be complemented by 3-4 indirect options with journey times of under five hours, and many more with slightly longer journey durations.
What are the departure and arrival airports for flights from Milan to Porto?
Departure airports: TAP flights to Porto will depart from Milan Malpensa Airport (MXP). The best way to get there is via the Malpensa Express, which runs from Milan Centrale. Extensive parking is also available, for both short and long term stays. Some Ryanair flights leave from Bergamo Orio al Serio (BGY). Terravision buses run from central Milan, while there are parking lots on-site. Both airports offer free WiFi, as well as food, drink, and shopping opportunities. Travelers should be sure to plan their route to either airport in advance, particularly for early flights, as traffic and limited nighttime transport options can affect the route.
Arrival airport: All flights from Milan to Porto will arrive at Porto Airport (OPO). metro rail services run directly from the airport to central Porto, along with various local buses. Free WiFi is available for all visitors, making taxi bookings relatively easy, while car hire outlets are also present, including Avis, Budget, Europcar, and Sixt.
FAQs: Milan to Porto Flight
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.

Flights from Milan to Porto generally leave from Milan Malpensa Airport and arrive in Porto Airport.
Milan Malpensa Airport is 47.9 km away from Milan city centre and Porto Airport is 14.8 km from Porto city centre.
popular airports
Popular airports from Milan to Porto
- 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 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 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
Most popular flights from Milan
More options for your journey from Milan to Porto
Here are some other resources that might have the information you need
















