Travel Information
Compare bus and flight for Barcelona to Sofia
Omio recommends booking the flight as it is the most popular option from Barcelona to Sofia among Omio's users. If you are prioritising price take the flight with prices starting from €30. For those with little time consider booking a flight which can get you there in 3h 30m. In case you are seeking to minimise your carbon footprint the bus is your best bet as it emits only 1.7 - 4.4kg. The ticket price range depends on the travel mode: a flight costs an average of €30, and a bus costs an average of €126.
Distance: 1086 miles (1749 km)
Compare flight with
Most popular Flight | Bus |
|---|---|
€148 Average price Cheapest | €213 Average price |
6h 30m Average total duration Fastest 3h 30m Onboard + 3h 0m Additional time* | 43h 20m Average total duration 42h 50m Onboard + 30m Additional time* |
5.2 - 10.5kg CO2 emissions | 1.7 - 4.4kg CO2 emissions Lowest |
![]() Most popular airline | ![]() Most popular bus company |
Direct Options | Direct Options |
Additional time: Average total travel duration to departure point, security checks and transfers.
Travel optionsfrom Barcelona to Sofia
How to get from Barcelona to Sofia by train, bus or flight.
Our recommendation
The best way to travel from Barcelona to Sofia is by taking a bus because it’s the best combination of price and speed.

Cheapest

Fastest

Other options


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 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.
Jan 25
Jan 26
Jan 27
Jan 28
Jan 29
Jan 30
Jan 31
Feb 01
Feb 02
Feb 03
Feb 04
Feb 05
Feb 06
Feb 07
Feb 08
Feb 09
Feb 10
Feb 11
Feb 12
Feb 13
Feb 14
More than 1,000 travel companies trust us to sell their tickets all in one place.
Travelling from Barcelona to Sofia: related information
Here are some other resources that might have the information you need


