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 €17 For those with little time, consider booking a flight, which has an average total journey time of 5h 35m. 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 €17, while a flight costs an average of €284.
Distance: 900 km
Compare flight with
Most popular Flight | Bus | Train |
|---|---|---|
€284 Average price | €69 Average price | €17 Average price Cheapest |
5h 35m Average total duration Fastest 3h 35m Onboard + 2h 0m Additional time* | 20h 2m Average total duration 19h 32m Onboard + 30m Additional time* | 10h 1m Average total duration 9h 31m 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.
Compare ways to travel from Porto to Barcelona
Compare the available ways to get from Porto to Barcelona, with the key details around price, speed, convenience, and direct service.
This is compared to other travel options from Porto to Barcelona:
A train is €52 less than a bus for this route with tickets for a bus from Porto to Barcelona costing on average €69.
A train is €267 less than a flight for this route with tickets for a flight from Porto to Barcelona costing on average €284.
Other travel options to Barcelona take longer:
Train takes on average 10h 1m.
Bus takes on average 20h 2m.
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 PM 20h20 Porto, Terminal Intermodal de Campanhã 7:20 PM Barcelona, Estación de Autobuses de Sants €37 1 One-way 1 transfer
Cheapest
Normal · Normal10:00 PM 20h20 Porto, Terminal Intermodal de Campanhã 7:20 PM Barcelona, Estación de Autobuses de Sants €37 1 One-way 1 transfer
Fastest
FR 45467:00 AM 1h45 Porto Airport 9:45 AM Barcelona El Prat Airport €135 1 One-way 0 transfers
Other options
Normal · Normal9:15 PM 21h05 Porto, Aeroporto Francisco Sá Carneiro 7:20 PM Barcelona, Estación de Autobuses de Sants €37 1 One-way 1 transfer
FlixBus · FlixBus · FlixBus10:55 PM 26h40 Porto, Terminal Intermodal de Campanhã 2:35 AM Barcelona, Estació d'Autobusos Nord €87 1 One-way 2 transfers
FR 45843:50 PM 1h45 Porto Airport 6:35 PM Barcelona El Prat Airport €242 1 One-way 0 transfers
VY11792:35 PM 1h45 Porto Airport 5:20 PM Barcelona El Prat Airport €250 1 One-way 0 transfers
VY11718:45 AM 1h45 Porto Airport 11:30 AM Barcelona El Prat Airport €250 1 One-way 0 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.
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 €52 less than a bus for this route with tickets for a bus from Porto to Barcelona costing on average €69.
A train is €267 less than a flight for this route with tickets for a flight from Porto to Barcelona costing on average €284.
Other travel options to Barcelona take longer:
Train takes on average 10h 1m.
Bus takes on average 20h 2m.
- Around 71 flights per day.
- Around 12 buses per day.
- Around 2 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 TAP Portugal, Lufthansa, Air France, Air Europa, Vueling, Iberia, Swiss, Ryanair, Brussels Airlines, BA Euroflyer, Austrian Airlines, Lot Polish Airlines, Eurowings, Royal Air Maroc, Air Baltic, Helvetic Airways, British Airways, Avion Express Malta, CitizenPlane, Lufthansa Cityline, azores airlines, Edelweiss Air, Norwegian Air Shuttle, Iberia Express, Lufthansa City Airlines to go to Barcelona by flight.
- Travel with AVE, Renfe AVLO to go to Barcelona by train.
- Travel with FlixBus, Alsa, BlaBlaCar Bus, Internorte, Rede Expressos to go to Barcelona by bus.
- 9 direct flights per day with Vueling, Ryanair, CitizenPlane.
- 0 direct trains per day with AVE, Renfe AVLO.
- 0 direct buses per day with Internorte.
Travelling from Porto to Barcelona: related information
Here are some other resources that might have the information you need


