Skip to content

Cheap flights from Porto to Milan from $24 OPO → BGY, LIN, MXP, XIK

Porto Airport (OPO) → Orio al Serio International Airport (BGY), Milano Linate Airport (LIN), Milano Malpensa Airport (MXP), Milan Centrale Railway Station (XIK)

The cheapest return found recently is $39 with Ryanair, 10 Dec – 17 Dec, found 2 days ago. The cheapest one-way found recently is $24 with Ryanair, 20 Feb 2027, found 2 days ago.

Cheapest one-way found recently
$24, Ryanair, found 2 days ago
Cheapest return found recently
$39, 10 Dec to 17 Dec
Usual return price
$60 to $130
Cheapest month to fly
December 2026, return fares from $39 found in the last 7 days
Airlines with nonstop flights
Ryanair, easyJet, Wizz Air Malta, Malta Air
Shortest nonstop flight found
2 h 30 min

Return

The cheapest return fare on each of 29 departure dates is usually $60 to $130.

Cheapest return found recently

$39

10 Dec – 17 Dec · Ryanair

Porto Airport (OPO) → Orio al Serio International Airport (BGY)

Leaves 3:25 p.m. · Return leaves 6:25 a.m. · 5 h 15 min of travel, both ways together

out nonstop, back nonstop

found 2 days ago

See prices for these datesCheck today's price

Cheapest nonstop return

$39

10 Dec – 17 Dec · Ryanair

Porto Airport (OPO) → Orio al Serio International Airport (BGY)

Leaves 3:25 p.m. · Return leaves 6:25 a.m. · 5 h 15 min of travel, both ways together

out nonstop, back nonstop

found 2 days ago

See prices for these datesCheck today's price

FareTell may earn a commission when you book through a partner.

Found recently, and the cheapest we hold

Cheapest found recently $39 10 Dec – 17 Decfound 2 days agoSee prices for these dates

It is also the cheapest return we hold, of any age.

What have prices looked like?

Over 49 days, 24 Sept to 11 Nov, the cheapest return we saw each day was $38 to $55.

$39, the cheapest return found recently, sits here in that range of $38 to $55.

Those were the prices on those days, not today's.

Is this a good return price?

Compared with the cheapest return fare on each of 29 departure dates from 17 Nov to 17 Jul 2027, found by travelers' searches in the last 7 days (economy, the price the seller showed on Aviasales). The usual range is the middle half of those prices.

Could nearby dates be cheaper?

No. We hold 7-night return fares on 1 other departure date within 3 days of 10 Dec, and it is not cheaper.

Every date we hold

375 fares on 29 departure dates

17 Nov – 12 Dec: $58, found 5 days ago20 Nov – 22 Nov: $104, found 6 days ago21 Nov – 26 Nov: $104, found 2 days ago22 Nov – 26 Nov: $77, found 4 days ago27 Nov – 30 Nov: $107, found 3 days ago5 Dec – 9 Dec: $96, found 2 days ago8 Dec – 9 Dec: $190, found 3 days ago10 Dec – 17 Dec: $39, found 2 days ago12 Dec – 19 Dec: $138, found 4 days ago13 Dec – 16 Dec: $77, found 6 days ago16 Dec – 21 Dec: $82, found 2 days ago17 Dec – 20 Dec: $88, found 7 days ago18 Dec – 20 Dec: $94, found 5 days ago25 Dec – 3 Jan 2027: $131, found 7 days ago29 Dec – 7 Jan 2027: $60, found 4 days ago2 Jan 2027 – 9 Jan 2027: $171, found 5 days ago3 Jan 2027 – 10 Jan 2027: $178, found 5 days ago18 Jan 2027 – 23 Jan 2027: $49, found 2 days ago19 Jan 2027 – 21 Jan 2027: $51, found 2 days ago22 Jan 2027 – 25 Jan 2027: $55, found 3 days ago24 Jan 2027 – 27 Jan 2027: $68, found 3 days ago29 Jan 2027 – 31 Jan 2027: $57, found 3 days ago6 Feb 2027 – 9 Feb 2027: $130, found 6 days ago7 Feb 2027 – 9 Mar 2027: $56, found 4 days ago12 Feb 2027 – 14 Feb 2027: $62, found 2 days ago11 Mar 2027 – 14 Mar 2027: $72, found 2 days ago12 Mar 2027 – 18 Mar 2027: $61, found 6 days ago10 May 2027 – 26 Jun 2027: $133, found 7 days ago17 Jul 2027 – 25 Jul 2027: $152, found 5 days agoNovDecJanFebMarJul
See the chart as a table
The cheapest price seen for each departure date — per traveler in Economy.
DatesFromAirlineAirportsStopsFound
17 Nov – 12 Dec$58easyJetPorto Airport (OPO) → Milano Malpensa Airport (MXP)out nonstop, back nonstopfound 5 days agoSee prices for these dates
20 Nov – 22 Nov$104Wizz Air MaltaPorto Airport (OPO) → Milano Malpensa Airport (MXP)out nonstop, back nonstopfound 6 days agoSee prices for these dates
21 Nov – 26 Nov$104RyanairPorto Airport (OPO) → Milano Malpensa Airport (MXP)out nonstop, back nonstopfound 2 days agoSee prices for these dates
22 Nov – 26 Nov$77Wizz Air MaltaPorto Airport (OPO) → Milano Malpensa Airport (MXP)out nonstop, back nonstopfound 4 days agoSee prices for these dates
27 Nov – 30 Nov$107Wizz Air MaltaPorto Airport (OPO) → Milano Malpensa Airport (MXP)out nonstop, back nonstopfound 3 days agoSee prices for these dates
5 Dec – 9 Dec$96RyanairPorto Airport (OPO) → Orio al Serio International Airport (BGY)out 1 stop, back nonstopfound 2 days agoSee prices for these dates
8 Dec – 9 Dec$190TAP Air PortugalPorto Airport (OPO) → Milano Malpensa Airport (MXP)out 1 stop, back nonstopfound 3 days agoSee prices for these dates
10 Dec – 17 Dec$39RyanairPorto Airport (OPO) → Orio al Serio International Airport (BGY)out nonstop, back nonstopfound 2 days agoSee prices for these dates
12 Dec – 19 Dec$138RyanairPorto Airport (OPO) → Orio al Serio International Airport (BGY)out nonstop, back nonstopfound 4 days agoSee prices for these dates
13 Dec – 16 Dec$77easyJetPorto Airport (OPO) → Orio al Serio International Airport (BGY)out 1 stop, back nonstopfound 6 days agoSee prices for these dates
16 Dec – 21 Dec$82Malta AirPorto Airport (OPO) → Orio al Serio International Airport (BGY)out nonstop, back 1 stopfound 2 days agoSee prices for these dates
17 Dec – 20 Dec$88Malta AirPorto Airport (OPO) → Orio al Serio International Airport (BGY)out nonstop, back 1 stopfound 7 days agoSee prices for these dates
18 Dec – 20 Dec$94RyanairPorto Airport (OPO) → Orio al Serio International Airport (BGY)out nonstop, back 1 stopfound 5 days agoSee prices for these dates
25 Dec – 3 Jan 2027$131Wizz Air MaltaPorto Airport (OPO) → Milano Malpensa Airport (MXP)out nonstop, back nonstopfound 7 days agoSee prices for these dates
29 Dec – 7 Jan 2027$60easyJetPorto Airport (OPO) → Milano Malpensa Airport (MXP)out nonstop, back nonstopfound 4 days agoSee prices for these dates
2 Jan 2027 – 9 Jan 2027$171VuelingPorto Airport (OPO) → Milano Malpensa Airport (MXP)out 1 stop, back nonstopfound 5 days agoSee prices for these dates
3 Jan 2027 – 10 Jan 2027$178Air EuropaPorto Airport (OPO) → Milano Malpensa Airport (MXP)out 1 stop, back nonstopfound 5 days agoSee prices for these dates
18 Jan 2027 – 23 Jan 2027$49RyanairPorto Airport (OPO) → Orio al Serio International Airport (BGY)out nonstop, back nonstopfound 2 days agoSee prices for these dates
19 Jan 2027 – 21 Jan 2027$51easyJetPorto Airport (OPO) → Milano Malpensa Airport (MXP)out nonstop, back nonstopfound 2 days agoSee prices for these dates
22 Jan 2027 – 25 Jan 2027$55RyanairPorto Airport (OPO) → Milano Linate Airport (LIN)out nonstop, back nonstopfound 3 days agoSee prices for these dates
24 Jan 2027 – 27 Jan 2027$68RyanairPorto Airport (OPO) → Milano Malpensa Airport (MXP)out nonstop, back nonstopfound 3 days agoSee prices for these dates
29 Jan 2027 – 31 Jan 2027$57RyanairPorto Airport (OPO) → Milano Malpensa Airport (MXP)out nonstop, back nonstopfound 3 days agoSee prices for these dates
6 Feb 2027 – 9 Feb 2027$130RyanairPorto Airport (OPO) → Milano Malpensa Airport (MXP)out 1 stop, back 1 stopfound 6 days agoSee prices for these dates
7 Feb 2027 – 9 Mar 2027$56Wizz Air MaltaPorto Airport (OPO) → Milano Malpensa Airport (MXP)out nonstop, back nonstopfound 4 days agoSee prices for these dates
12 Feb 2027 – 14 Feb 2027$62RyanairPorto Airport (OPO) → Milano Malpensa Airport (MXP)out nonstop, back nonstopfound 2 days agoSee prices for these dates
11 Mar 2027 – 14 Mar 2027$72Wizz Air MaltaPorto Airport (OPO) → Milano Malpensa Airport (MXP)out nonstop, back nonstopfound 2 days agoSee prices for these dates
12 Mar 2027 – 18 Mar 2027$61Wizz Air MaltaPorto Airport (OPO) → Milano Malpensa Airport (MXP)out nonstop, back nonstopfound 6 days agoSee prices for these dates
10 May 2027 – 26 Jun 2027$133VuelingPorto Airport (OPO) → Milano Malpensa Airport (MXP)out 1 stop, back nonstopfound 7 days agoSee prices for these dates
17 Jul 2027 – 25 Jul 2027$152VuelingPorto Airport (OPO) → Milano Malpensa Airport (MXP)out 1 stop, back nonstopfound 5 days agoSee prices for these dates

Which month looks cheapest?

December 2026 is the cheapest month — from $39.

November 2026From $585 departure dates17 Nov – 12 Dec · found 5 days agoSee prices for these dates
December 2026From $39Cheapest seen10 departure dates10 Dec – 17 Dec · found 2 days agoSee prices for these datesEvery date in December 2026
January 2027From $497 departure dates18 Jan 2027 – 23 Jan 2027 · found 2 days agoSee prices for these datesEvery date in January 2027
February 2027From $563 departure dates7 Feb 2027 – 9 Mar 2027 · found 4 days agoSee prices for these dates
March 2027From $612 departure dates12 Mar 2027 – 18 Mar 2027 · found 6 days agoSee prices for these dates
May 2027From $1331 departure date10 May 2027 – 26 Jun 2027 · found 7 days agoSee prices for these dates
July 2027From $1521 departure date17 Jul 2027 – 25 Jul 2027 · found 5 days agoSee prices for these dates

One-way

The cheapest one-way fare on each of 19 departure dates is usually $26 to $40.

Cheapest one-way found recently

$24

20 Feb 2027 · Ryanair

Porto Airport (OPO) → Milano Malpensa Airport (MXP)

Leaves 3:30 p.m. · 2 h 30 min trip

nonstop

found 2 days ago

Open this tripCheck today's price

Cheapest nonstop one-way

$24

20 Feb 2027 · Ryanair

Porto Airport (OPO) → Milano Malpensa Airport (MXP)

Leaves 3:30 p.m. · 2 h 30 min trip

nonstop

found 2 days ago

Open this tripCheck today's price

FareTell may earn a commission when you book through a partner.

Found recently, and the cheapest we hold

Cheapest found recently $24 20 Feb 2027found 2 days agoOpen this trip

Cheapest we hold, of any age $22 20 Decfound 6 days agoOpen this trip

What have prices looked like?

Over 49 days, 24 Sept to 11 Nov, the cheapest one-way we saw each day was $18 to $24.

At $24, the cheapest one-way found recently is at the high end of that range.

Those were the prices on those days, not today's.

Is this a good one-way price?

Compared with the cheapest one-way fare on each of 19 departure dates from 17 Nov to 24 May 2027, found by travelers' searches in the last 7 days (economy, the price the seller showed on Aviasales). The usual range is the middle half of those prices.

Could nearby dates be cheaper?

We hold no other one-way fares leaving within 3 days of 20 Feb 2027 to compare.

Every date we hold

128 fares on 19 departure dates

17 Nov: $40, found 2 days ago18 Nov: $39, found 6 days ago20 Nov: $47, found 4 days ago24 Nov: $29, found 3 days ago25 Nov: $36, found 7 days ago26 Nov: $34, found 6 days ago3 Dec: $26, found 7 days ago10 Dec: $26, found 5 days ago20 Dec: $22, found 6 days ago18 Jan 2027: $23, found 3 days ago22 Jan 2027: $32, found 5 days ago23 Jan 2027: $32, found 4 days ago20 Feb 2027: $24, found 2 days ago5 Mar 2027: $24, found 4 days ago13 Mar 2027: $28, found 8 days ago14 Mar 2027: $52, found 2 days ago16 Mar 2027: $30, found 2 days ago21 Mar 2027: $64, found 3 days ago24 May 2027: $59, found 6 days agoNovDecJanMarMay
See the chart as a table
The cheapest price seen for each departure date — per traveler in Economy.
DatesFromAirlineAirportsStopsFound
17 Nov$40easyJetPorto Airport (OPO) → Milano Malpensa Airport (MXP)nonstopfound 2 days agoOpen this trip
18 Nov$39easyJetPorto Airport (OPO) → Milano Linate Airport (LIN)nonstopfound 6 days agoOpen this trip
20 Nov$47Wizz Air MaltaPorto Airport (OPO) → Milano Malpensa Airport (MXP)nonstopfound 4 days agoOpen this trip
24 Nov$29easyJetPorto Airport (OPO) → Milano Malpensa Airport (MXP)nonstopfound 3 days agoOpen this trip
25 Nov$36RyanairPorto Airport (OPO) → Orio al Serio International Airport (BGY)nonstopfound 7 days agoOpen this trip
26 Nov$34Malta AirPorto Airport (OPO) → Orio al Serio International Airport (BGY)nonstopfound 6 days agoOpen this trip
3 Dec$26RyanairPorto Airport (OPO) → Orio al Serio International Airport (BGY)nonstopfound 7 days agoOpen this trip
10 Dec$26RyanairPorto Airport (OPO) → Orio al Serio International Airport (BGY)nonstopfound 5 days agoOpen this trip
20 Dec$22RyanairPorto Airport (OPO) → Milano Malpensa Airport (MXP)nonstopfound 6 days agoOpen this trip
18 Jan 2027$23RyanairPorto Airport (OPO) → Orio al Serio International Airport (BGY)nonstopfound 3 days agoOpen this trip
22 Jan 2027$32Wizz Air MaltaPorto Airport (OPO) → Milano Malpensa Airport (MXP)nonstopfound 5 days agoOpen this trip
23 Jan 2027$32RyanairPorto Airport (OPO) → Orio al Serio International Airport (BGY)nonstopfound 4 days agoOpen this trip
20 Feb 2027$24RyanairPorto Airport (OPO) → Milano Malpensa Airport (MXP)nonstopfound 2 days agoOpen this trip
5 Mar 2027$24RyanairPorto Airport (OPO) → Orio al Serio International Airport (BGY)nonstopfound 4 days agoOpen this trip
13 Mar 2027$28easyJetPorto Airport (OPO) → Milano Malpensa Airport (MXP)nonstopfound 8 days agoSee prices for these dates
14 Mar 2027$52easyJetPorto Airport (OPO) → Milano Linate Airport (LIN)nonstopfound 2 days agoOpen this trip
16 Mar 2027$30RyanairPorto Airport (OPO) → Milano Malpensa Airport (MXP)nonstopfound 2 days agoOpen this trip
21 Mar 2027$64RyanairPorto Airport (OPO) → Milano Malpensa Airport (MXP)nonstopfound 3 days agoOpen this trip
24 May 2027$59RyanairPorto Airport (OPO) → Milano Malpensa Airport (MXP)nonstopfound 6 days agoOpen this trip

Which month looks cheapest?

December 2026 is the cheapest month — from $22.

November 2026From $296 departure dates24 Nov · found 3 days agoOpen this trip
December 2026From $22Cheapest seen3 departure dates20 Dec · found 6 days agoOpen this tripEvery date in December 2026
January 2027From $233 departure dates18 Jan 2027 · found 3 days agoOpen this tripEvery date in January 2027
February 2027From $241 departure date20 Feb 2027 · found 2 days agoOpen this trip
March 2027From $245 departure dates5 Mar 2027 · found 4 days agoOpen this trip
May 2027From $591 departure date24 May 2027 · found 6 days agoOpen this trip

Premium cabin fares from Porto to Milan

We hold no premium economy, business or first-class fares for this route: we collect them for the busiest routes, and this one is not among them yet.

How far ahead were prices cheapest for Porto to Milan?

Return

Fares 30 to 59 days before departure were typically 61% lower than 0 to 6 days before departure.

From the cheapest return each day between 24 Sept and 11 Nov (49 days), grouped by how many days ahead the flight left; one adult in economy.

Each range covers different departure dates, so this compares typical fares, not the same trip priced twice.

Prices reflect recent searches — current fares may differ.

See these ranges as a table
Typical price in each booking range — round trip, per traveler in Economy.
Booked ahead byTypical fareCheapest dayAbove the cheapestDays of prices
0–6 days$121$58+157%34
7–13 days$83$56+77%39
14–29 days$63$39+34%49
30–59 days$47$38Cheapest seen49
60–89 days$65$49+38%49
90–179 days$59$52+26%49
180+ days$105$90+123%36

One-way

Fares 30 to 59 days before departure were typically 42% lower than 0 to 6 days before departure.

From the cheapest one-way each day between 24 Sept and 11 Nov (49 days), grouped by how many days ahead the flight left; one adult in economy.

Each range covers different departure dates, so this compares typical fares, not the same trip priced twice.

Prices reflect recent searches — current fares may differ.

See these ranges as a table
Typical price in each booking range — one way, per traveler in Economy.
Booked ahead byTypical fareCheapest dayAbove the cheapestDays of prices
0–6 days$38$32+73%7
7–13 days$37$24+68%15
14–29 days$24$18+9%49
30–59 days$22$18Cheapest seen49
60–89 days$24$21+9%49
90–179 days$27$23+23%42
180+ days$58$45+164%42

Could a nearby airport be cheaper?

A different airport at either end can change the fare — sometimes a lot.

One-way

Porto → Turin

125 km from Milan

$38

$14 more than flying to Milan

14 Feb 2027 · OPO → TRN · nonstop

found 7 days ago

Check today's price

Porto → Genoa

119 km from Milan

$146

$122 more than flying to Milan

14 Nov · OPO → GOA · stops unknown

found 3 days ago

Check today's price

Cheapest recent price on each route — one way, per traveler in Economy. Distances are in a straight line.

Live price for these dates

The cheapest return found recently is for 10 Dec – 17 Dec. A live search on this page shows what those dates cost now, for one adult in economy.

Questions about this trip

How much is a return flight from Porto to Milan?

The cheapest return found recently is $39 with Ryanair, 10 Dec to 17 Dec, found 2 days ago. The cheapest return fare on each of 29 departure dates is usually $60 to $130.

How much is a one-way flight from Porto to Milan?

The cheapest one-way found recently is $24 with Ryanair, 20 Feb 2027, found 2 days ago. The cheapest one-way we hold, of any age, is $22 with Ryanair, 20 Dec, found 6 days ago. The cheapest one-way fare on each of 19 departure dates is usually $26 to $40.

What is the cheapest month to fly from Porto to Milan?

December 2026 is the cheapest month for a return, from $39, 10 Dec to 17 Dec, found 2 days ago. It is the cheapest month for a one-way too, from $22, 20 Dec, found 6 days ago.

How far ahead should I book a flight from Porto to Milan?

In 49 days of prices between 24 Sept and 11 Nov, return fares 30 to 59 days before departure were typically 61% lower than 0 to 6 days before departure. One-way fares 30 to 59 days before departure were typically 42% lower than 0 to 6 days before departure.

Is there a direct flight from Porto to Milan?

Yes, the cheapest nonstop return found recently is $39 with Ryanair, 10 Dec to 17 Dec, found 2 days ago. The cheapest nonstop one-way found recently is $24 with Ryanair, 20 Feb 2027, found 2 days ago.

How long is the flight from Porto to Milan?

The cheapest nonstop one-way found recently, with Ryanair on 20 Feb 2027, takes 2 h 30 min from Porto Airport (OPO) to Milano Malpensa Airport (MXP).

Which airlines have the cheapest flights from Porto to Milan?

Between 17 Nov and 17 Jul 2027, Ryanair has the cheapest return on 11 of the 29 departure dates we hold, Wizz Air Malta on 7 and easyJet on 4. Between 17 Nov and 24 May 2027, Ryanair has the cheapest one-way on 11 of the 19 departure dates we hold, easyJet on 5 and Wizz Air Malta on 2.

Prices are what travelers' searches on Aviasales found in the last 7 days, in US dollars: the price the seller showed on Aviasales; bags may cost extra. Fares change, so check today's price before you book. How our prices work