Travel Information
Compare train, bus, and flight for Barcelona to Porto
Omio recommends booking the flight as it is the most popular option from Barcelona to Porto 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 29m. 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 €289.
Distance: 900 km
Compare flight with
Most popular Flight | Bus | Train | Driving |
|---|---|---|---|
€289 Average price | €63 Average price | €17 Average price Cheapest | €177 Average price (fuel + tolls) |
5h 29m Average total duration Fastest 3h 29m Onboard + 2h 0m Additional time* | 18h 59m Average total duration 18h 29m Onboard + 30m Additional time* | 10h 1m Average total duration 9h 31m Onboard + 30m Additional time* | 11h 22m Average total duration (door-to-door) |
2.7 - 5.4kg CO2 emissions | 0.9 - 2.2kg CO2 emissions Lowest | - CO2 emissions | - CO2 emissions |
![]() Most popular airline | ![]() Most popular bus company | ![]() Most popular train company | Your own car or car rental |
Direct Options | Direct Options | Direct Options | Direct Options |
Additional time: Average total travel duration to departure point, security checks and transfers.
Compare ways to travel from Barcelona to Porto
Compare the available ways to get from Barcelona to Porto, with the key details around price, speed, convenience, and direct service.
This is compared to other travel options from Barcelona to Porto:
A train is €47 less than a bus for this route with tickets for a bus from Barcelona to Porto costing on average €63.
A train is €272 less than a flight for this route with tickets for a flight from Barcelona to Porto costing on average €289.
Other travel options to Porto take longer:
Train takes on average 10h 1m.
Bus takes on average 18h 59m.
Travel optionsfrom Barcelona to Porto
How to get from Barcelona to Porto by train, bus or flight.
Our recommendation
The best way to travel from Barcelona to Porto is by taking a flight because it’s the best combination of price and speed.
FR 45976:45 AM 2h00 Barcelona El Prat Airport 7:45 AM Porto Airport €31 1 One-way 0 transfers
Cheapest
FR 45976:45 AM 2h00 Barcelona El Prat Airport 7:45 AM Porto Airport €31 1 One-way 0 transfers
Fastest
VY11828:25 PM 1h50 Barcelona El Prat Airport 9:15 PM Porto Airport €116 1 One-way 0 transfers
Other options
Normal · Normal1:00 PM 18h14 Barcelona, Estació d'Autobusos Nord 6:14 AM Porto, Terminal Intermodal de Campanhã €40 1 One-way 1 transfer
Normal · Normal9:30 AM 21h44 Barcelona, Estació d'Autobusos Nord 6:14 AM Porto, Terminal Intermodal de Campanhã €40 1 One-way 1 transfer
06020+
Normal11:18 AM 12h56 Barcelona Sants 11:14 PM Porto, Terminal Intermodal de Campanhã €61 1 One-way 1 transfer
FR 45859:35 AM 2h00 Barcelona El Prat Airport 10:35 AM Porto Airport €33 1 One-way 0 transfers
FR 800311:40 AM 2h00 Barcelona El Prat Airport 12:40 PM Porto Airport €42 1 One-way 0 transfers
FR 458710:55 PM 2h00 Barcelona El Prat Airport 11:55 PM Porto Airport €83 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 Barcelona to Porto
Travel to Porto 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 Barcelona to Porto.

This is compared to other travel options from Barcelona to Porto:
A train is €47 less than a bus for this route with tickets for a bus from Barcelona to Porto costing on average €63.
A train is €272 less than a flight for this route with tickets for a flight from Barcelona to Porto costing on average €289.
Other travel options to Porto take longer:
Train takes on average 10h 1m.
Bus takes on average 18h 59m.
- Around 52 flights per day.
- Around 7 buses per day.
- Around 2 trains per day.
However, we recommend checking specific travel dates for your route between Barcelona and Porto as scheduled services by train, bus, and flight can vary by season or day of the week.
- Flights mostly depart from Barcelona El Prat Airport and arrive in Porto Airport.
- Trains mostly depart from Barcelona Sants and arrive in Porto - Campanhã.
- Buses mostly depart from Barcelona, Estació d'Autobusos Nord and arrive in Porto, Terminal Intermodal de Campanhã.
- Travel with Alsa, FlixBus, BlaBlaCar Bus, Internorte to go to Porto by bus.
- Travel with AVE to go to Porto by train.
- Travel with TAP Portugal, Air France, Air Europa, Vueling, Iberia, BA Euroflyer, Lufthansa, Ryanair, Swiss, Lot Polish Airlines, Royal Air Maroc, Brussels Airlines, Austrian Airlines, Air Baltic, Eurowings, British Airways, Helvetic Airways, CitizenPlane, Avion Express Malta, azores airlines, Edelweiss Air to go to Porto by flight.
- 0 direct buses per day with BlaBlaCar Bus, Internorte.
- 9 direct flights per day with Vueling, Ryanair, CitizenPlane.
Travelling from Barcelona to Porto: related information
Here are some other resources that might have the information you need


