Prices were available within the past 7 days and start at $25 for one-way flights and $45 for roundtrip, for the period specified. Prices and availability are subject to change.
Travelers can choose from a range of airlines providing flights from Porto (OPO) to Milan (MXP) on this international short-haul route. Whether you prefer full-service airlines or budget-friendly options, you can compare choices to discover the itinerary that aligns with your budget, schedule, and travel preferences as you set out to explore Milan's iconic attractions and neighborhoods. Get all the essential information for flights departing from Dr. Francisco de Sa Carneiro Airport (OPO) to Malpensa International Airport (MXP).
Fastest flight duration: around 2h 30m non-stop
Route distance: roughly 900 miles (1,450 km)
Flights per week: around 7 departures on average
Typical fares (one-way): economy tickets often range from $40–$345, depending on seasonality and how far ahead you book
Flights from Dr. Francisco de Sa Carneiro Airport (OPO) to Malpensa International Airport (MXP)
Based on the latest traveler bookings, here are the top airlines favored for flights from Porto to Milan, featuring both non-stop and one-stop options. Common layover spots include Humberto Delgado Airport (LIS), with an approximate layover of 1 hour and 45 minutes, and Adolfo Suárez Madrid-Barajas Airport (MAD), offering a 1 hour and 15 minutes stop. These choices allow you to tailor your journey based on price, travel duration, and cabin class for an optimal itinerary.
easyJet: This budget airline provides non-stop flights, with one-way ticket prices generally ranging from $55 to $205. It holds about 44% of departures for this route, and the total travel duration is approximately 2 hours and 30 minutes.
Ryanair: Another low-cost option, Ryanair offers non-stop services with one-way fares typically falling between $40 and $345. It represents around 34% of the flights on this route, with a journey time of 2 hours and 30 minutes.
TAP Portugal: A full-service airline, TAP Portugal delivers one-stop flights with one-way fares generally between $100 and $515. It accounts for about 14% of the departures on this route, featuring an in-flight time of 3 hours and 30 minutes, totaling around 5 hours including the layover.
Iberia: This full-service airline provides one-stop service, with one-way fares typically ranging from $135 to $345. It makes up approximately 4% of departures on this route, with 3 hours and 30 minutes in the air, leading to a total journey time of about 5 hours including stopovers.
Alternative route from Porto (OPO) to Milan (MXP)
Porto to Bergamo (OPO-BGY): Orio Al Serio Airport (BGY) is located approximately 48 miles from Malpensa International Airport (MXP). One-way economy prices for this route generally range from $30 to $330, influenced by seasonal demand and advance booking. This route is predominantly serviced by non-stop flights, with Ryanair being the leading airline operating on this route as a low-cost option.
How to find the best prices for flights from Porto (OPO) to Milan (MXP)
Getting some of the best deals on flights from Porto to Milan is all about timing and flexibility. Here are some key tips to help you save:
Best times to book and fly: cheaper fares are usually found when booking at least two months in advance, although most travelers tend to book between two to eight weeks ahead. Afternoon departures from 12 PM to 6 PM often offer lower prices and are also the most popular flight times. Additionally, flying on Thursday provides both cheaper rates and is the most favored travel day.
Set up price alerts: stay updated on price changes by using Expedia's Price Tracker. Receive alerts when fares drop for your selected route.
Bundle and save: bundle your flight and hotel to save on Expedia, or unlock a hotel deal after booking your flight.*
Compare flight options: use Expedia's search tool to compare airlines, routes, direct vs. non-direct flights, and flight times. You can also sort by price to find the most affordable options.
Stay flexible with dates: being open to different travel days can sometimes help you find better prices on flights and hotels.
Think about luggage: nowadays, it's important to check the airline's baggage policies to find the best value. That may be paying for an additional carry-on bag or booking a ticket with checked luggage included. Either way, double-check your allowance before confirming your booking to avoid excess baggage fees at the airport.
*Members only. Savings vary and are not available on all bundles. Select hotels.
Arriving at Malpensa International Airport from Dr. Francisco de Sa Carneiro Airport
Milan welcomes travelers from Porto with a range of transport options based on price, convenience, and proximity. For departures, Dr. Francisco de Sa Carneiro Airport is roughly a 10-minute drive (covering about 8 miles) from central Porto. Here's how to reach Milan efficiently:
Hotel transfer: Transfers offer a convenient way to reach your hotel in Milan, with private rides that can be arranged in advance.
Taxi/ride-hailing: Taxis and ride-hailing services may be available from designated pickup areas outside the terminal, check locally on arrival.
Public transportation: From Malpensa International Airport, Malpensa Airport Terminal 1 Station (a metro station) is located about 0.1 miles away on foot, providing easy access to public transit. For those traveling by car, Milan Malpensa Seaport (a seaport) is approximately 4.1 miles from the airport, while Ferno-Lonate Pozzolo Station (a train station) is about 4.8 miles away by car, offering additional transportation options.
Porto to Milan Flights
The cheapest times to fly from Porto to Milan
On average, Thursday can be the cheapest time to fly, according to data from the Airlines Reporting Corporation (ARC), one of the world's biggest databases for global airline sales. The data reveals that you could save up to 16% by flying on a Thursday—the cheapest day to travel on average—instead of a Sunday—the most expensive. Some of the most affordable flights from Porto to Milan are during the month of November. You can find some of the cheapest flights from Porto to Milan with Expedia's search tool and vast selection of airlines.
The best time to book a flight from Porto to Milan
Sunday is one of the best days to book for cheap flights from Porto to Milan: Tickets reserved on a Sunday cost between 6% and 13% less than those reserved on a Friday, according to ARC data. The data also suggests booking early can also lead to cheaper airfares. You could save 24% by buying your tickets for domestic flights at least a month in advance and 10% by booking international flights 2 months in advance.
How to find cheap round-trip tickets from Porto to Milan
Being flexible with your dates and using Expedia's Price Drop Protection and Price Tracking features are some of the best ways of finding a cheap ticket from Porto to Milan in 2026. You can also book with separate airlines for your outbound and return journeys, from $25 one-way. Expedia also offers Price Drop Protection, so if the cost of your airfare goes down after booking, you'll receive a credit for the difference*. This is available for a small fee, and is free to One Key Gold and Platinum tier members.
Expedia's Price Tracking feature means you can stay on top of airfares without manually checking every day. It sends you automated price alerts for cheap Porto to Milan flights and uses historical data to indicate when the best time to book is. Download Expedia's free app to activate this handy tool in a few easy taps.
You could also save big by booking one of Expedia's vacation packages. Bundling together your Porto to Milan airfare with your accommodations and car rental is often cheaper than booking everything separately. There’s also One Key, Expedia's generous rewards program. Join for free and you could earn One Key cash on most bookings to save on future adventures.
*Terms apply.
Disclaimer: ARC The statistics are based on average round-trip ticket prices between January and August 2023. The percentages you see are averages.
Frequently Asked Questions
How much does a flight from Porto (OPO-Dr. Francisco de Sa Carneiro) to Milan (MXP-Malpensa Intl.) cost?
You can find cheap one-way flights from $25 and cheap return flights $45 Porto (OPO-Dr. Francisco de Sa Carneiro) to Milan (MXP-Malpensa Intl.) with Expedia. One-way flights typically cost between $131 and $1306, and return flights often range between $363 and $1662. Flight prices vary based on the month and day of the week you want to travel, as well as the airline and how far in advance you book your ticket. Filter your search on Expedia by "Price (lowest to highest)" to see the cheapest fares first, and use the Price Tracking tool to receive alerts when Porto (OPO-Dr. Francisco de Sa Carneiro) to Milan (MXP-Malpensa Intl.) ticket fares go up or down.
*Typical price ranges based on flights available on Expedia in the last year. Prices include multi-airline options.
What is the cheapest month to fly from Porto (OPO-Dr. Francisco de Sa Carneiro) to Milan (MXP-Malpensa Intl.)?
The cheapest month to fly from OPO to MXP is November when demand is low. Traveling in off-peak or shoulder months is usually a good way to secure cheap tickets, just remember to avoid flying during holidays if you're able to. Use the calendar view in your search to see which months have low fares on this route.
Which airlines fly direct from Porto (OPO-Dr. Francisco de Sa Carneiro) to Milan (MXP-Malpensa Intl.)?
Choose from 2 airlines operating direct flights from OPO to MXP:
Ryanair operates around 8 direct flights from OPO to MXP every week
easyJet operates around 9 direct flights from OPO to MXP every week
What is the cheapest airline that flies from Porto (OPO-Dr. Francisco de Sa Carneiro) to Milan (MXP-Malpensa Intl.)?
easyJet is one of the cheapest airlines offering connecting flights from Dr. Francisco de Sa Carneiro (OPO) to Malpensa Intl. (MXP) starting from around $434. Use Expedia's search tool to compare the prices and schedules of airlines that fly this route to find the best option for your plans and budget.
*Prices based on flights available on Expedia in the last year.
How do I find cheap flights from Porto (OPO-Dr. Francisco de Sa Carneiro) to Milan (MXP-Malpensa Intl.)?
To find a cheap flight from Porto (OPO-Dr. Francisco de Sa Carneiro) to Milan (MXP-Malpensa Intl.), be flexible with your dates. Traveling outside of peak vacation months and booking a mid-week flight can help you save. Early morning and late night flights are often more affordable, too. Expedia allows you to compare flight times, airlines and routes all in one place to find low fares. You can also set up Price Tracking and receive alerts when fares go up or down.
What is the best airline to fly with from Porto (OPO-Dr. Francisco de Sa Carneiro) to Milan (MXP-Malpensa Intl.)?
The best airline to fly with from Porto (OPO) to Milan (MXP) will differ from traveler to traveler. If you like to fly early, easyJet offers early morning flights. If price is the most important factor, Ryanair typically offers the lowest fares. TAP Portugal offers the most daily flights from OPO to MXP, which is great if flexibility is what you value most. The best carrier for this journey could also be the one you have a loyalty membership with, as flying with that airline or another airline within the same alliance could help you collect points or enjoy lounge access.
What is the best time to fly from Porto (OPO-Dr. Francisco de Sa Carneiro) to Milan (MXP-Malpensa Intl.)?
The best time to fly is usually mid-week (Tuesday or Wednesday) and during early morning hours as flights tend to be cheaper, less crowded, and generally more on-time. Avoid major holidays and peak vacation seasons for smoother travel. Combining off-peak days and hours often gives the best combination of cost, comfort, and convenience.
How many flights per day from Porto (OPO-Dr. Francisco de Sa Carneiro) to Milan (MXP-Malpensa Intl.)?
On average, there are around 1 nonstop flights per day from Dr. Francisco de Sa Carneiro (OPO) to Malpensa Intl. (MXP). For more options, look at flights that include layovers.
What is the earliest flight from Porto (OPO-Dr. Francisco de Sa Carneiro) to Milan (MXP-Malpensa Intl.)?
The earliest flight from Dr. Francisco de Sa Carneiro (OPO) to Malpensa International (MXP) usually departs at around 12:15 AM, operated by Aegean Airlines. This seasonal service is available in May, July, August, September, and October, giving you a head start on your adventures in Milan. To compare early flights on Expedia, select the "Early Morning" and "Morning" filters in your search.
What are the most popular departure times for flights from Porto (OPO-Dr. Francisco de Sa Carneiro) to Milan (MXP-Malpensa Intl.)?
When flying from Dr. Francisco de Sa Carneiro (OPO) to Malpensa International Airport (MXP), the most popular departure times are from 6am to 9am. This time slot accounts for about 28% of total traffic. Lufthansa, Vueling, and Swiss International Air Lines are among the airlines that offer flights during this period. Many travelers prefer this timing as it allows for a full day in Milan upon arrival.
How long does it take to fly from Porto (OPO-Dr. Francisco de Sa Carneiro) to Milan (MXP-Malpensa Intl.)?
Direct flights from OPO to MXP usually take about 2 hours 30 minutes, traveling roughly 921 miles. If you opt for a connecting flight, expect to add around 2 hours 30 minutes to your journey. Keep in mind that actual flight times can vary due to wind patterns, weather, and air traffic.
Can you fly business or first class from Porto (OPO-Dr. Francisco de Sa Carneiro) to Milan (MXP-Malpensa Intl.)?
Business class is available on flights from OPO to MXP. Airlines that offer business class service on this route include:
Iberia
TAP Portugal
Lufthansa
Hop!
Air Europa
Swiss International Air Lines
Brussels Airlines
KLM
Air France
Aegean
How do I earn miles on a Porto (OPO-Dr. Francisco de Sa Carneiro) to Milan (MXP-Malpensa Intl.) flight with Expedia?
It's easy to earn miles on a Porto (OPO-Dr. Francisco de Sa Carneiro) to Milan (MXP-Malpensa Intl.) flight when you book with Expedia. Before you confirm your booking, simply select your frequent flyer program and enter your program number. As a member of One Key™, you can also earn OneKeyCash™* on top of your airline miles when you book with Expedia.
*Excludes taxes and fees. OneKeyCash is not redeemable for cash and can only be used on Expedia and other participating brands.
What airports do you fly into for Milan from Dr. Francisco de Sa Carneiro (OPO)?
From Dr. Francisco de Sa Carneiro (OPO), you can fly into Malpensa Intl. (MXP) and Linate (LIN) in Milan. Some flights may connect through major hubs like Humberto Delgado (LIS), Adolfo Suarez Madrid-Barajas (MAD), Frankfurt Intl. (FRA) before reaching Milan. Compare routes and airports on Expedia to find the best flight options for your travel plans.
Is it cheaper to buy a plane ticket from Porto (OPO-Dr. Francisco de Sa Carneiro) to Milan (MXP-Malpensa Intl.) at the last minute?
Typically, booking a last minute flight from Porto (OPO-Dr. Francisco de Sa Carneiro) to Milan (MXP-Malpensa Intl.) will be more expensive than booking in advance. As the departure date approaches, there are usually fewer seats available which can drive up the cost. However, if there's some wiggle room with your travel dates and times, you could bag a cheap last-minute fare.
Is it cheaper to book a Porto (OPO-Dr. Francisco de Sa Carneiro) to Milan (MXP-Malpensa Intl.) flight and hotel package?
Securing a Porto (OPO-Dr. Francisco de Sa Carneiro) to Milan (MXP-Malpensa Intl.) Milan Vacation Packages is usually cheaper than booking separately. With Expedia, you can enjoy the ease of organizing your travels all in one place. Select from our extensive range of stays and then add flights, activities and car rentals to your booking. Bundle everything together, and you could save hundreds of dollars.
Can I cancel or change the date of my flight from Porto (OPO-Dr. Francisco de Sa Carneiro) to Milan (MXP-Malpensa Intl.)?
If you booked your Porto (OPO-Dr. Francisco de Sa Carneiro) to Milan (MXP-Malpensa Intl.) flight within the last 24 hours, you may be able to modify or cancel it without any fees. Depending on the airline and the type of ticket you have, additional charges may apply for changes beyond this timeframe. Airline policies and contact information can be found in your itinerary or confirmation email. Or, head to our Customer Service portal if you'd like more information.
Travel information
Origin airport
Porto Airport
Destination airport
Milan Malpensa Airport
Distance
921 miles away
Airlines serving
TAP Portugal, Air Europa, Iberia, Air France, Swiss International Air Lines, Lufthansa, LC Peru, Brussels Airlines, Ryanair, Vueling Airlines, SAS, easyJet, LOT-Polish Airlines, Turkish Airlines, British Airways, Eurowings, Royal Air Maroc