- Must visit
Serralves Museum of Contemporary Art
Porto’s leading contemporary art museum, set within the Serralves Foundation grounds and known for major international exhibitions and modern architecture.
Flights from Milan to Porto depart on average 80 times per day, taking around 5h 25m. Cheap flight tickets for this journey start at $72 (€59) 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 940 miles (1514 km) distance in 2h 40m. November is the cheapest month to fly.
Distance 940 miles (1514 km) |
Average flight duration 5h 25m |
Cheapest ticket price $72 (€59) |
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 - Sep |
Low Season Jan - Mar |
Busiest Day Thu |
Least Busy Day Wed |
Best time to book 42 days |
Cheapest price
$183
Average price
$481
Fastest journey
2 h 40 m
Average duration
3 h 29 m
Flights per day
84
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 $481 if you buy it on the day, but the cheapest tickets can be found for only $183.
Of the 84 flights that leave Milan for Porto onSat, Jun 20, 3 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
On Sat, Jun 20 the direct flights cover the 1514 km distance in an average of 3 h 29 m but if you time it right, some flights will get you there in just 2 h 40 m .
On Sat, Jun 20 the longest flights will take 4 h 40 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.
TP827 · TP1922
TP827 · TP1920
TP827 · TP1938
VY6343 · VY8480
UX1060 · UX1147
FR 8952
FR 6856
FR 4042
UX1060 · UX1141
LX1629+
LX2064Omio 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 bus with prices starting from $77. 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 bus is your best bet as it emits only 1.5 - 3.8kg. The ticket price range depends on the travel mode: a bus costs an average of $77, and a flight costs an average of $72.
Distance: 940 miles (1514 km)
Most popular Flight | Bus | Driving |
|---|---|---|
$187 Average price | $159 Average price Cheapest | $566 Average price (fuel + tolls) |
8h 25m Average total duration Fastest 5h 25m Onboard + 3h 0m Additional time* | 22h 33m Average total duration 22h 3m Onboard + 30m Additional time* | 19h 27m Average total duration (door-to-door) |
4.5 - 9.1kg CO2 emissions | 1.5 - 3.8kg CO2 emissions Lowest | - CO2 emissions |
![]() Most popular airline | ![]() Most popular bus company | Your own car or car rental |
Direct Options | Direct Options | Direct Options |
Additional time: Average total travel duration to departure point, security checks and transfers.
This is compared to other travel options from Milan to Porto:
A bus is $28 (€23) less than a flight for this route with tickets for a flight from Milan to Porto costing on average $187 (€153).
Other travel options to Porto take longer:
Bus takes on average 22h 3m.
The table below shows live departures for Milan to Porto flights for today, Friday, June 19. You can also manually refresh the results below to see updated flight journeys.
| Provider | Departs | Duration | Arrives | Transfers | Tickets |
|---|---|---|---|---|---|
SN4164+ SN3811 | 7:00 AM Milan Linate Airport | 6h05 | 12:05 PM Porto Airport | 1 transfer | |
BA581+ BA7069+ IB1153 | 7:25 AM Milan Linate Airport | 13h35 | 8:00 PM Porto Airport | 2 transfers | |
BA591 · BA460+ IB1153 | 7:25 AM Milan Malpensa Airport | 13h35 | 8:00 PM Porto Airport | 2 transfers | |
BA591+ BA7055+ IB1153 | 7:25 AM Milan Malpensa Airport | 13h35 | 8:00 PM Porto Airport | 2 transfers | |
BA591 · BA462+ IB1153 | 7:25 AM Milan Malpensa Airport | 13h35 | 8:00 PM Porto Airport | 2 transfers | |
BA591+ BA7069+ IB1153 | 7:25 AM Milan Malpensa Airport | 13h35 | 8:00 PM Porto Airport | 2 transfers | |
BA591+ BA7195+ IB1153 | 7:25 AM Milan Malpensa Airport | 13h35 | 8:00 PM Porto Airport | 2 transfers | |
IB668 · IB1151 | 7:50 AM Milan Linate Airport | 9h10 | 4:00 PM Porto Airport | 1 transfer | |
IB668 · IB1149 | 7:50 AM Milan Linate Airport | 4h55 | 11:45 AM Porto Airport | 1 transfer | |
IB668 · IB1153 | 7:50 AM Milan Linate Airport | 13h10 | 8:00 PM Porto Airport | 1 transfer | |
AF1831 · AF1528 | 9:15 AM Milan Malpensa Airport | 7h10 | 3:25 PM Porto Airport | 1 transfer | |
AF1831 · AF1516 | 9:15 AM Milan Malpensa Airport | 13h45 | 10:00 PM Porto Airport | 1 transfer | |
SN3146 · SN3809 | 9:25 AM Milan Linate Airport | 7h35 | 4:00 PM Porto Airport | 1 transfer | |
AF1213 · AF1528 | 9:45 AM Milan Linate Airport | 6h40 | 3:25 PM Porto Airport | 1 transfer | |
AF1213 · AF1516 | 9:45 AM Milan Linate Airport | 13h15 | 10:00 PM Porto Airport | 1 transfer | |
LH1851+ LH103 · LH1178 | 9:50 AM Milan Linate Airport | 6h55 | 3:45 PM Porto Airport | 2 transfers | |
VY6331 · VY8480 | 9:55 AM Milan Malpensa Airport | 12h25 | 9:20 PM Porto Airport | 1 transfer | |
IB672 · IB1153 | 10:25 AM Milan Malpensa Airport | 10h35 | 8:00 PM Porto Airport | 1 transfer | |
IB672 · IB1151 | 10:25 AM Milan Malpensa Airport | 6h35 | 4:00 PM Porto Airport | 1 transfer | |
LH271 · LH1178 | 10:35 AM Milan Linate Airport | 6h10 | 3:45 PM Porto Airport | 1 transfer | |
LX1613+ LX4592 | 10:40 AM Milan Malpensa Airport | 7h40 | 5:20 PM Porto Airport | 1 transfer | |
LX1613+ LX2064 | 10:40 AM Milan Malpensa Airport | 8h50 | 6:30 PM Porto Airport | 1 transfer | |
KL1614 · KL1577 | 11:00 AM Milan Linate Airport | 12h15 | 10:15 PM Porto Airport | 1 transfer | |
KL1614 · KL1573 | 11:00 AM Milan Linate Airport | 5h30 | 3:30 PM Porto Airport | 1 transfer | |
KL1614+ KL1575 | 11:00 AM Milan Linate Airport | 8h15 | 6:15 PM Porto Airport | 1 transfer | |
UX1066 · UX1147 | 11:05 AM Milan Malpensa Airport | 20h45 | 6:50 AM Porto Airport | 1 transfer | |
UX1066 · UX1143 | 11:05 AM Milan Malpensa Airport | 5h10 | 3:15 PM Porto Airport | 1 transfer | |
UX1066 · UX1141 | 11:05 AM Milan Malpensa Airport | 9h15 | 7:20 PM Porto Airport | 1 transfer | |
BA569 · BA462+ IB1153 | 11:10 AM Milan Linate Airport | 9h50 | 8:00 PM Porto Airport | 2 transfers | |
LH249 · LH1178 | 11:20 AM Milan Malpensa Airport | 5h25 | 3:45 PM Porto Airport | 1 transfer | |
AF1516+ AF1331 | 11:25 AM Milan Malpensa Airport | 11h35 | 10:00 PM Porto Airport | 1 transfer | |
AF1528+ AF1331 | 11:25 AM Milan Malpensa Airport | 5h00 | 3:25 PM Porto Airport | 1 transfer | |
IB664 · IB1153 | 11:40 AM Milan Linate Airport | 9h20 | 8:00 PM Porto Airport | 1 transfer | |
TP823 · TP1930 | 11:50 AM Milan Malpensa Airport | 6h10 | 5:00 PM Porto Airport | 1 transfer | |
TP823 · TP1932 | 11:50 AM Milan Malpensa Airport | 8h05 | 6:55 PM Porto Airport | 1 transfer | |
FR 4042 | 12:20 PM Milan Bergamo Orio al Serio Airport | 2h45 | 2:05 PM Porto Airport | 0 transfersDirect | |
AF1413 · AF1516 | 12:20 PM Milan Linate Airport | 10h40 | 10:00 PM Porto Airport | 1 transfer | |
KL1616 · KL1577 | 1:00 PM Milan Linate Airport | 10h15 | 10:15 PM Porto Airport | 1 transfer | |
KL1616+ KL1575 | 1:00 PM Milan Linate Airport | 6h15 | 6:15 PM Porto Airport | 1 transfer | |
VY6343 · VY8480 | 1:25 PM Milan Malpensa Airport | 8h55 | 9:20 PM Porto Airport | 1 transfer | |
IB674 · IB1153 | 2:25 PM Milan Malpensa Airport | 6h35 | 8:00 PM Porto Airport | 1 transfer | |
AF1013 · AF1516 | 2:55 PM Milan Linate Airport | 8h05 | 10:00 PM Porto Airport | 1 transfer | |
LX1629+ LX2064 | 2:55 PM Milan Malpensa Airport | 4h35 | 6:30 PM Porto Airport | 1 transfer | |
AF1013 · AF1528 | 2:55 PM Milan Linate Airport | 25h30 | 3:25 PM Porto Airport | 1 transfer | |
LH275 · LH1180 | 3:25 PM Milan Linate Airport | 8h30 | 10:55 PM Porto Airport | 1 transfer | |
UX1060 · UX1145 | 3:45 PM Milan Malpensa Airport | 20h05 | 10:50 AM Porto Airport | 1 transfer | |
UX1060 · UX1141 | 3:45 PM Milan Malpensa Airport | 4h35 | 7:20 PM Porto Airport | 1 transfer | |
UX1060 · UX1147 | 3:45 PM Milan Malpensa Airport | 16h05 | 6:50 AM Porto Airport | 1 transfer | |
AF1231 · AF1528 | 3:45 PM Milan Malpensa Airport | 24h40 | 3:25 PM Porto Airport | 1 transfer | |
AF1231 · AF1516 | 3:45 PM Milan Malpensa Airport | 7h15 | 10:00 PM Porto Airport | 1 transfer | |
VY6333 · VY8480 | 4:45 PM Milan Malpensa Airport | 5h35 | 9:20 PM Porto Airport | 1 transfer | |
KL1618 · KL1577 | 4:50 PM Milan Linate Airport | 6h25 | 10:15 PM Porto Airport | 1 transfer | |
KL1618 · KL1573 | 4:50 PM Milan Linate Airport | 23h40 | 3:30 PM Porto Airport | 1 transfer | |
KL1618 · KL1575 | 4:50 PM Milan Linate Airport | 26h20 | 6:10 PM Porto Airport | 1 transfer | |
TP825 · TP1936 | 5:25 PM Milan Malpensa Airport | 6h35 | 11:00 PM Porto Airport | 1 transfer | |
TP825 · TP1938 | 5:25 PM Milan Malpensa Airport | 8h15 | 12:40 AM Porto Airport | 1 transfer | |
TP825 · TP1920 | 5:25 PM Milan Malpensa Airport | 15h35 | 8:00 AM Porto Airport | 1 transfer | |
LH277+ LH1180 | 6:10 PM Milan Linate Airport | 5h45 | 10:55 PM Porto Airport | 1 transfer | |
UX1062 · UX1145 | 6:15 PM Milan Malpensa Airport | 17h35 | 10:50 AM Porto Airport | 1 transfer | |
UX1062 · UX1143 | 6:15 PM Milan Malpensa Airport | 22h00 | 3:15 PM Porto Airport | 1 transfer | |
UX1062 · UX1147 | 6:15 PM Milan Malpensa Airport | 13h35 | 6:50 AM Porto Airport | 1 transfer | |
LH1855+ LH1780+ LH6976 | 6:25 PM Milan Linate Airport | 7h15 | 12:40 AM Porto Airport | 2 transfers | |
LH1855+ LH1788 | 6:25 PM Milan Linate Airport | 6h00 | 11:25 PM Porto Airport | 1 transfer | |
AF1731 · AF1528 | 6:35 PM Milan Malpensa Airport | 21h50 | 3:25 PM Porto Airport | 1 transfer | |
LH255 · LH1180 | 6:50 PM Milan Malpensa Airport | 5h05 | 10:55 PM Porto Airport | 1 transfer | |
FR 4638 | 7:15 PM Milan Bergamo Orio al Serio Airport | 2h45 | 9:00 PM Porto Airport | 0 transfersDirect | |
TP827 · TP1922 | 8:00 PM Milan Malpensa Airport | 14h00 | 9:00 AM Porto Airport | 1 transfer | |
TP827 · TP1938 | 8:00 PM Milan Malpensa Airport | 5h40 | 12:40 AM Porto Airport | 1 transfer | |
TP827 · TP1920 | 8:00 PM Milan Malpensa Airport | 13h00 | 8:00 AM Porto Airport | 1 transfer | |
AF1313 · AF1528 | 8:45 PM Milan Linate Airport | 19h40 | 3:25 PM Porto Airport | 1 transfer | |
AF1313 · AF1516 | 8:45 PM Milan Linate Airport | 26h20 | 10:05 PM Porto Airport | 1 transfer | |
KL1682+ KL1575 | 10:10 PM Milan Linate Airport | 21h00 | 6:10 PM Porto Airport | 1 transfer | |
KL1682+ KL1573 | 10:10 PM Milan Linate Airport | 18h20 | 3:30 PM Porto Airport | 1 transfer | |
KL1682+ KL1577 | 10:10 PM Milan Linate Airport | 25h05 | 10:15 PM Porto Airport | 1 transfer | |
VY6337 · VY8482 | 11:50 PM Milan Malpensa Airport | 14h15 | 1:05 PM Porto Airport | 1 transfer | |
TP829 · TP1926 | 5:50 AM Milan Malpensa Airport | 5h45 | 10:35 AM Porto Airport | 1 transfer | |
TP829 · TP1924 | 5:50 AM Milan Malpensa Airport | 5h10 | 10:00 AM Porto Airport | 1 transfer | |
LX1639+ LX2066 | 5:50 AM Milan Malpensa Airport | 6h35 | 11:25 AM Porto Airport | 1 transfer | |
TP829 · TP1928 | 5:50 AM Milan Malpensa Airport | 9h40 | 2:30 PM Porto Airport | 1 transfer | |
LH5639+ LH1176 | 6:15 AM Milan Malpensa Airport | 6h00 | 11:15 AM Porto Airport | 1 transfer | |
AF1733 · AF1516 | 6:25 AM Milan Linate Airport | 16h40 | 10:05 PM Porto Airport | 1 transfer | |
AF1733 · AF1528 | 6:25 AM Milan Linate Airport | 10h00 | 3:25 PM Porto Airport | 1 transfer | |
KL1612 · KL1577 | 6:40 AM Milan Linate Airport | 16h35 | 10:15 PM Porto Airport | 1 transfer | |
KL1612 · KL1573 | 6:40 AM Milan Linate Airport | 9h50 | 3:30 PM Porto Airport | 1 transfer | |
KL1612 · KL1575 | 6:40 AM Milan Linate Airport | 12h30 | 6:10 PM Porto Airport | 1 transfer | |
AF1131 · AF1428 | 6:45 AM Milan Malpensa Airport | 26h45 | 8:30 AM Porto Airport | 1 transfer | |
AF1131 · AF1528 | 6:45 AM Milan Malpensa Airport | 9h40 | 3:25 PM Porto Airport | 1 transfer | |
AF1131 · AF1516 | 6:45 AM Milan Malpensa Airport | 16h20 | 10:05 PM Porto Airport | 1 transfer | |
LH281+ LH1176 | 6:50 AM Milan Linate Airport | 5h25 | 11:15 AM Porto Airport | 1 transfer | |
LH281+ LH1166+ LH6968 | 6:50 AM Milan Linate Airport | 8h40 | 2:30 PM Porto Airport | 2 transfers | |
Find all the dates and times for this journey
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.
Discover the best of Porto — top attractions, local food, transport tips, budget advice, and currency essentials. Plan your perfect Porto trip today.
Porto’s leading contemporary art museum, set within the Serralves Foundation grounds and known for major international exhibitions and modern architecture.
Portugal’s oldest public art museum, featuring Portuguese painting, sculpture, decorative arts, and works by António Soares dos Reis.
A modern museum dedicated to FC Porto’s history, trophies, and sporting legacy, popular even with visitors who are not football fans.
Porto’s postcard riverfront quarter, filled with colorful historic buildings, terraces, and classic views across the Douro.
The city’s grand central avenue, lined with monumental architecture and serving as a key gathering point for visitors and locals.
The surrounding area near Livraria Lello and Clérigos is one of Porto’s busiest visitor zones, popular for architecture and social media photography.
Porto’s iconic sandwich layered with cured meats and steak, covered in melted cheese and a rich beer-tomato sauce, often served with fries.
A traditional Porto stew of tripe, white beans, sausage, and meats, strongly tied to the city’s culinary identity and history.
A classic codfish casserole from Porto made with salt cod, potatoes, onion, olives, and egg, created by a 19th-century Porto merchant.
An established fine-dining restaurant focused on refined traditional Portuguese cuisine, with polished service and a classic reputation.
Porto’s landmark luxury dining experience with tasting menus, major wine focus, and panoramic views over the city and Douro.
A long-standing Ribeira restaurant serving traditional Portuguese dishes such as cod and octopus in a cozy, historic setting.
Generally cheaper than many Western European cities. Food and local transport are good value, while central hotels cost more in peak season.
Tipping is optional, not mandatory. In restaurants, locals often round up or leave 5-10% for good service. Small change is fine in cafés. Round up taxi fares.
Official public transport app
Porto Airport -> Trindade Station, Porto
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.

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