Porto (OPO) to Milan (MIL): 922 miles (1,484 km) great-circle, about 2h 20m nonstop by our estimate. Cheapest fare observed: $143 round-trip on Ryanair, nonstop, departing June 26, 2026.
$143 round-trip, Ryanair FR4637, departing 2026-06-26 at 21:35, returning 2026-07-04. The recorded itinerary left on a Friday, returning on a Saturday 8 nights later; the fare was observed 62 days before departure. "Book this flight" opens Kiwi.com with the same airline and dates.
At $143, it ranked 11th of the 30 round-trip fares we recorded from OPO (median $202). That is 15.5 cents per great-circle mile (round-trip price over one-way distance), below the OPO median of 19.7 cents across 30 round-trip routes.
Routes from OPO of similar length: Luxembourg (923 mi) at $202 and Brussels (916 mi) at $137.
Ryanair had the cheapest fare on 17 of 30 OPO routes. It is the 19th longest of the 30 routes we track from OPO.
Of 44 departure airports with a fare to Milan, Porto (OPO) ranked 26th at $143. Lowest: $37 from Barcelona (BCN); highest: $1408 from Washington DC (DCA); 28 nonstop. Cheapest-fare airlines (routes): Ryanair (13), easyJet (5), Wizz Air Malta (4), Wizz Air (3), airline MW (2) and Condor (2), plus 13 more.
That depends on your passport and trip, so check the official source for Italy: European Commission: Schengen visa policy. Connecting elsewhere? Check that country's transit rules too.
Travelpayouts fares (cheapest per route, observed April 25, 2026); OurAirports coordinates and elevations; IANA zones Europe/Lisbon, Europe/Rome; flight time is our estimate.