Travel Information
Compare train, bus, and flight for Porto to Barcelona
Omio recommends booking the flight as it is the most popular option from Porto to Barcelona among Omio's users. If you are prioritising price take the bus with prices starting from $34. For those with little time consider booking a flight which can get you there in 4h 10m. In case you are seeking to minimise your carbon footprint the bus is your best bet as it emits only 0.9 - 2.2kg. The ticket price range depends on the travel mode: a bus costs an average of $34, and a train costs an average of $136.
Distance: 559 miles (900 km)
Compare flight with
Most popular Flight | Bus | Train |
|---|---|---|
$117 Average price | $62 Average price Cheapest | $136 Average price |
7h 10m Average total duration Fastest 4h 10m Onboard + 3h 0m Additional time* | 14h 56m Average total duration 14h 26m Onboard + 30m Additional time* | 9h 54m Average total duration 9h 24m Onboard + 30m Additional time* |
2.7 - 5.4kg CO2 emissions | 0.9 - 2.2kg CO2 emissions Lowest | - CO2 emissions |
![]() Most popular airline | ![]() Most popular bus company | ![]() Most popular train company |
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 Porto to Barcelona:
A bus is $54 (€44) less than a flight for this route with tickets for a flight from Porto to Barcelona costing on average $117 (€94).
A bus is $74 (€60) less than a train for this route with tickets for a train from Porto to Barcelona costing on average $136 (€110).
Other travel options to Barcelona take longer:
Train takes on average 9h 24m.
Bus takes on average 14h 26m.
Travel optionsfrom Porto to Barcelona
How to get from Porto to Barcelona by train, bus or flight.
Our recommendation
The best way to travel from Porto to Barcelona is by taking a bus because it’s the best combination of price and speed.
Normal · Normal12:45 PM17h05Porto, Terminal Intermodal de Campanhã6:50 AMBarcelona, Estació d'Autobusos Nord$501One-way1 transfer
Cheapest
Normal · Normal12:45 PM17h05Porto, Terminal Intermodal de Campanhã6:50 AMBarcelona, Estació d'Autobusos Nord$501One-way1 transfer
Fastest
FR 45966:10 PM1h45Porto Airport8:55 PMBarcelona El Prat Airport$971One-way0 transfers
Other options
Normal · Normal12:45 PM17h20Porto, Terminal Intermodal de Campanhã7:05 AMBarcelona, Estación de Autobuses de Sants$501One-way1 transfer
3124 · 48223:30 PM21h40Porto, Terminal Intermodal de Campanhã2:10 PMBarcelona, Estació d'Autobusos Nord$631One-way1 transfer
Normal · Normal12:00 PM20h00Maia, Porto (Aeroporto Sa Carneiro)9:00 AMBarcelona, Estació d'Autobusos Nord$731One-way1 transfer
VY848110:00 PM1h45Porto Airport12:45 AMBarcelona El Prat Airport$1091One-way0 transfers
VY84831:45 PM1h45Porto Airport4:30 PMBarcelona El Prat Airport$1091One-way0 transfers
VY84794:50 PM1h50Porto Airport7:40 PMBarcelona El Prat Airport$1091One-way0 transfers
Find all the dates and times for this journey by train, bus, flight, and ferry .
Compare prices and tickets Prices for trains, buses and flights
Compare train, 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.
May 15
May 16
May 17
May 18
May 19
May 20
May 21
May 22
May 23
May 24
May 25
May 26
May 27
May 28
May 29
May 30
May 31
Jun 01
Jun 02
Jun 03
Jun 04
How to get from Porto to Barcelona
The Best Way According to our Users
More than 1,000 travel companies trust us to sell their tickets all in one place.
FAQs: Travel from Porto to Barcelona
Travel to Barcelona easily. Whether you want fast, cheap or something entirely different, our travel experts have collected everything you need to know so you can find the best option from Porto to Barcelona.

This is compared to other travel options from Porto to Barcelona:
A bus is $54 (€44) less than a flight for this route with tickets for a flight from Porto to Barcelona costing on average $117 (€94).
A bus is $74 (€60) less than a train for this route with tickets for a train from Porto to Barcelona costing on average $136 (€110).
Other travel options to Barcelona take longer:
Train takes on average 9h 24m.
Bus takes on average 14h 26m.
- Around 57 flights per day.
- Around 19 trains per day.
- Around 12 buses per day.
However, we recommend checking specific travel dates for your route between Porto and Barcelona as scheduled services by train, bus, and flight can vary by season or day of the week.
- Flights mostly depart from Porto Airport and arrive in Barcelona El Prat Airport.
- Trains mostly depart from Madrid-Puerta de Atocha-Almudena Grandes and arrive in Barcelona Sants.
- Buses mostly depart from Porto, Terminal Intermodal de Campanhã and arrive in Barcelona, Estació d'Autobusos Nord.
- Travel with Alsa, BlaBlaCar Bus, FlixBus, BlaBlaCar to go to Barcelona by bus.
- Travel with AVE, Renfe ALVIA, Renfe Viajeros to go to Barcelona by train.
- Travel with Ryanair, Vueling, TAP Portugal, GetJet Airlines, Iberia, Air Europa, Airhub Airlines, Swiss, PGA-Portugalia Airlines, Edelweiss Air, azores airlines, Air Nostrum to go to Barcelona by flight.
- 0 direct buses per day with BlaBlaCar.
- 19 direct trains per day with AVE.
- 8 direct flights per day with Ryanair, Vueling, GetJet Airlines, Iberia, Airhub Airlines.
Travelling from Porto to Barcelona: related information
Here are some other resources that might have the information you need

