Travel Information
Compare bus, train, 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 bus with prices starting from €27. For those with little time consider booking a flight which can get you there in 2h 58m. 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 €27, and a train costs an average of €132.
Distance: 559 miles (900 km)
Compare flight with
Most popular Flight | Bus | Train |
|---|---|---|
€123 Average price | €80 Average price Cheapest | €139 Average price |
5h 58m Average total duration Fastest 2h 58m Onboard + 3h 0m Additional time* | 17h 58m Average total duration 17h 28m Onboard + 30m Additional time* | 9h 45m Average total duration 9h 15m 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.
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 4545Cheapest
Normal · NormalFastest
FR 4545Other options
06070+
04515+
00422
Normal · Normal
Normal · Normal
Normal · Normal
IB412 · IB547
FR 4585
TP1031 · TP1930Find 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 bus, train, 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.
Jan 16
Jan 17
Jan 18
Jan 19
Jan 20
Jan 21
Jan 22
Jan 23
Jan 24
Jan 25
Jan 26
Jan 27
Jan 28
Jan 29
Jan 30
Jan 31
Feb 01
Feb 02
Feb 03
Feb 04
Feb 05
How to get from Barcelona to Porto
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 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.

There are 3 travel options from Barcelona to Porto: train, bus or flight.
The cheapest way to go to Porto from Barcelona is by taking a flight, which costs on average $28 (€25).
This is compared to other ways of getting from Barcelona to Porto:
A flight is $2 (€2) less than a bus for this route with tickets for a bus from Barcelona to Porto costing on average $30 (€27).
A flight is $134 (€121) less than a train with an average ticket price of $162 (€146) from Barcelona to Porto.
The fastest way to get to Porto from Barcelona is by flight with an average travel time of 1 h 55 min.
Other travel options to Porto take longer:
Taking a bus requires on average 17 h 59 min of travel time.
Train takes 12 h 53 min on average.
The distance from Barcelona to Porto is approximately 557 miles (899 km).
The average frequency per day from Barcelona to Porto is:
- 7 buses per day.
- 33 flights a day.
- 1 train per day.
However, we recommend checking specific travel dates for your journey to Porto from Barcelona as scheduled services by train, bus or flight can vary by season or day of the week.
These are the most popular departure and arrival points when traveling from Barcelona to Porto:
- Most travelers who book a plane ticket from Barcelona to Porto depart from Barcelona El Prat Airport to Porto Airport.
The following travel companies offer services from Barcelona to Porto:
- Alsa, FlixBus or BlaBlaCar Bus can get you to Porto by bus. You can find a good deal for bus tickets with Alsa from Barcelona to Porto for $30 (€27) on Omio.
- Ryanair, Vueling Airlines, Iberia, Air Europa, TAP Portugal or PGA-Portugalia Airlines can get you to Porto by plane. You can find a good deal for plane tickets with Ryanair from Barcelona to Porto for $28 (€25) on Omio.
- Travel with AVE, iryo or Renfe Viajeros to go to Porto by train. For a good deal on tickets, you can find Renfe Viajeros Barcelona to Porto tickets on Omio for $162 (€146).
Yes, there are direct routes from Barcelona to Porto with the following travel companies:
- You can find 3 direct flights per day to take to Porto with Ryanair or Vueling Airlines.
Direct services to Porto tend to save you time and add more convenience as you won't need to transfer at another stop in between, so it's worth paying attention to before booking tickets for your trip.
Travelling from Barcelona to Porto: related information
Here are some other resources that might have the information you need

