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 train, with an average ticket price of $26 For those with little time, consider booking a flight, which has an average total journey time of 5h 34m. If you are seeking to minimise your carbon footprint, the bus is your best option, with estimated CO2 emissions of 0.9 - 2.2kg. Average ticket prices depend on the travel mode: a train costs an average of $26, while a flight costs an average of $339.
Distance: 559 miles (900 km)
Compare flight with
Most popular Flight | Train | Bus |
|---|---|---|
$339 Average price | $26 Average price Cheapest | $81 Average price |
5h 34m Average total duration Fastest 3h 34m Onboard + 2h 0m Additional time* | 9h 24m Average total duration 8h 54m Onboard + 30m Additional time* | 20h 5m Average total duration 19h 35m Onboard + 30m Additional time* |
2.7 - 5.4kg CO2 emissions | - CO2 emissions | 0.9 - 2.2kg CO2 emissions Lowest |
![]() Most popular airline | ![]() Most popular train company | ![]() Most popular bus 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 train is $55 (€45) less than a bus for this route with tickets for a bus from Porto to Barcelona costing on average $81 (€67).
A train is $313 (€258) less than a flight for this route with tickets for a flight from Porto to Barcelona costing on average $339 (€280).
Other travel options to Barcelona take longer:
Train takes on average 9h 24m.
Bus takes on average 20h 5m.
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 · Normal10:00 PM20h20Porto, Terminal Intermodal de Campanhã7:20 PMBarcelona, Estación de Autobuses de Sants$691One-way1 transfer
Cheapest
Normal · Normal10:00 PM20h20Porto, Terminal Intermodal de Campanhã7:20 PMBarcelona, Estación de Autobuses de Sants$691One-way1 transfer
Fastest
FR 458610:40 PM1h45Porto Airport1:25 AMBarcelona El Prat Airport$1131One-way0 transfers
Other options
Normal · Normal9:15 PM21h05Maia, Porto (Aeroporto Sa Carneiro)7:20 PMBarcelona, Estación de Autobuses de Sants$691One-way1 transfer
Normal · Normal12:00 PM20h00Maia, Porto (Aeroporto Sa Carneiro)9:00 AMBarcelona, Estació d'Autobusos Nord$721One-way1 transfer
FlixBus · FlixBus · FlixBus11:30 PM26h05Porto, Terminal Intermodal de Campanhã2:35 AMBarcelona, Estació d'Autobusos Nord$981One-way2 transfers
VY848110:05 PM1h45Porto Airport12:50 AMBarcelona El Prat Airport$1161One-way0 transfers
FR 45846:15 PM1h45Porto Airport9:00 PMBarcelona El Prat Airport$1741One-way0 transfers
IB564510:05 PM1h45Porto Airport12:50 AMBarcelona El Prat Airport$2571One-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.
Sep 28
Sep 29
Sep 30
Oct 01
Oct 02
Oct 03
Oct 04
Oct 05
Oct 06
Oct 07
Oct 08
Oct 09
Oct 10
Oct 11
Oct 12
Oct 13
Oct 14
Oct 15
Oct 16
Oct 17
Oct 18
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 train is $55 (€45) less than a bus for this route with tickets for a bus from Porto to Barcelona costing on average $81 (€67).
A train is $313 (€258) less than a flight for this route with tickets for a flight from Porto to Barcelona costing on average $339 (€280).
Other travel options to Barcelona take longer:
Train takes on average 9h 24m.
Bus takes on average 20h 5m.
- Around 68 flights per day.
- Around 12 buses per day.
- Around 3 trains 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 Porto - Campanhã and arrive in Barcelona Sants.
- Buses mostly depart from Porto, Terminal Intermodal de Campanhã and arrive in Barcelona, Estació d'Autobusos Nord.
- Travel with AVE, Renfe AVLO to go to Barcelona by train.
- Travel with Lufthansa Cityline, azores airlines, BA Euroflyer, Brussels Airlines, Avion Express Malta, Norwegian Air Shuttle, Air Baltic, Helvetic Airways, Lot Polish Airlines, British Airways, Ryanair, Edelweiss Air, Iberia, CitizenPlane, Air Europa, Swiss, Iberia Express, Eurowings, Lufthansa City Airlines, Air France, Austrian Airlines, Lufthansa, Vueling, Royal Air Maroc, TAP Portugal to go to Barcelona by flight.
- Travel with FlixBus, Alsa, Rede Expressos, BlaBlaCar Bus to go to Barcelona by bus.
- 0 direct trains per day with AVE, Renfe AVLO.
- 9 direct flights per day with Ryanair, CitizenPlane, Vueling.
Travelling from Porto to Barcelona: related information
Here are some other resources that might have the information you need


