Flights from Barcelona to Porto – Direct & connecting routes
Non-stop airlines Connecting flights Show map Price search
BCN to OPO – All flight route options from El Prat Airport, Spain to Porto Airport, Portugal. These routes are operated by 10 airlines. Fly non-stop with Vueling or Ryanair, or choose from 2 different stopover flights. The shortest flight time is 1 hour and 55 minutes. See the full flight schedule and time table, including departure times, airlines and stopover details to find the best option for you.
Find the best prices on hotels and car rental near Porto Airport
We got great deals on hotels and car rentals near the airport.
Barcelona to Porto flights
With over 199 flights every week and 4 different airlines you have a wide range of options. You can fly non-stop to Porto (OPO) from Barcelona (BCN) with Ryanair or Vueling or choose a connecting flight via Lisbon (LIS) or Madrid (MAD) if it suits you better.
Barcelona to Porto with Ryanair
You can fly non-stop every weekday with flights departing from 5:00 am to 10:00 pm.
With Iberia
If you fly from Barcelona with Iberia you will do a stopover in Madrid, MAD before reaching Porto. This flight trip will take 4 hours and you can fly every weekday with departures between 7:00 am and 5:00 pm. Iberia is a member of the air alliance OneWorld.
Distance & flight times: El Prat Airport to Porto Airport
The shortest flight time between BCN and OPO is 2 hours.
Via | Total flight time | Layover time | Distance |
---|---|---|---|
Direct | 2h 0m | - | 561 miles (903 km) |
LIS Lisbon | 3h 40m | 45m | 792 miles (1274 km) |
MAD Madrid | 5h 30m | 3h 0m | 575 miles (925 km) |



Quick copy and share this page
From Barcelona to Portugal
Below is a list of other destinations to Portugal from El Prat Airport with either direct flights or 1 stop connections.
From Spain to Porto
Below is a list of other cities in Spain with flights to Porto with either non-stop or connecting flights.
-
MAD Madrid Direct
-
PMI Palma de Mallorca Direct
-
AGP Malaga Direct
-
ALC Alicante Direct
-
LPA Las Palmas Direct
-
TFS Tenerife Direct
-
VLC Valencia Direct
-
SVQ Sevilla Direct
-
IBZ Ibiza Direct
-
ACE Lanzarote