There are 7 ways to get from Belgrade to Sofia by bus, train, rideshare, car or plane

Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2rio's travel planner.

Recommended option

Bus Lasta  •  7 h 25 min

  1. Take the bus from Belgrade to Niš
  2. Take the bus from Niš to Sofia

$20 - $44

Cheapest option

Bus, train  •  8 h 10 min

  1. Take the bus from Autokomanda to Dimitrovgrad
  2. Take the train from Dimitrovgrad to Sofia 491

$2 - $5

5 alternative options

Train  •  11 h 20 min

  1. Take the train from Beograd centar to Niš 790
  2. Take the train from Niš to Dimitrovgrad
  3. Take the train from Dimitrovgrad to Sofia 491

$12 - $33

Bus Nikolic Prevoz D.O.O  •  11 h 51 min

  1. Take the bus from Belgrade to Negotin
  2. Take the bus from Negotin to Vidin
  3. Take the bus from Vidin to Sofia

$30 - $38

Rideshare  •  5 h 17 min

  1. Take the rideshare from Beograd to Sofia 244.8 miles

$11 - $20

Drive  •  4 h 21 min

  1. Drive from Belgrade to Sofia 244.9 miles

$40 - $65

Fly  •  4 h 19 min

  1. Fly from Belgrade (BEG) to Sofia (SOF) BEG - SOF

$84 - $186

Questions & Answers

The cheapest way to get from Belgrade to Sofia is to bus and train which costs RSD 200 - RSD 550 and takes 8 h 10 min.

More details

The quickest way to get from Belgrade to Sofia is to fly which takes 4 h 19 min and costs RSD 8500 - RSD 19000.

More details

The distance between Belgrade and Sofia is 328 km. The road distance is 392 km.

Get driving directions

It takes approximately 7 h 25 min to get from Belgrade to Sofia, including transfers.

More details

No, there is no direct bus from Belgrade to Sofia. However, there are services departing from Belgrade and arriving at Sofia via Niš. The journey, including transfers, takes approximately 7 h 25 min.

More details

No, there is no direct train from Belgrade to Sofia. However, there are services departing from Beograd centar and arriving at Sofia via Niš and Dimitrovgrad. The journey, including transfers, takes approximately 11 h 20 min.

More details

What companies run services between Belgrade, Serbia and Sofia, Bulgaria?

You can take a bus from Belgrade to Sofia via Niš in around 7 h 25 min. Alternatively, you can take a train from Belgrade to Sofia via Niš and Dimitrovgrad in around 11 h 20 min.

Airlines
Air Serbia
Website
airserbia.com
Flights from Belgrade to Sofia
Ave. Duration
1 h 10 min
When
Every day
Estimated price
$130 - $280
Train operators
Serbian Railways
Website
srbvoz.rs
Train from Dimitrovgrad to Sofia
Ave. Duration
2 h 12 min
Frequency
Once daily
Estimated price
$2 - $5
Schedules at
srbvoz.rs
2nd Class Ticket
$2 - $3
1st Class Ticket
$3 - $5
Train from Beograd centar to Niš
Ave. Duration
3 h 57 min
Frequency
5 times a day
Estimated price
$7 - $19
Schedules at
srbvoz.rs
2nd Class Ticket
$7 - $11
1st Class Ticket
$12 - $19
Train from Niš to Dimitrovgrad
Ave. Duration
3 h 11 min
Frequency
5 times a day
Estimated price
$3 - $9
Schedules at
srbvoz.rs
2nd Class Ticket
$3 - $5
1st Class Ticket
$5 - $9
Bus operators
Nis Ekspres
Phone
+381 18 255 177
Email
marketing@nis-ekspres.rs
Website
nis-ekspres.rs
Bus from Belgrade to Niš
Ave. Duration
3 h 10 min
Frequency
4 times a day
Estimated price
$11
Schedules at
nis-ekspres.rs
Book at
onlinetickets.nis-ekspres.rs
Bus from Niš to Sofia
Ave. Duration
4 h
Frequency
Twice daily
Estimated price
$7 - $12
Schedules at
nis-ekspres.rs
Book at
onlinetickets.nis-ekspres.rs
BS Tours
Phone
011 761-4693
Email
bstours@verat.net
Website
bstours.rs
Bus from Belgrade to Niš
Ave. Duration
3 h 5 min
Frequency
Twice daily
Estimated price
$11 - $30
Schedules at
bstours.rs
Matpu
Phone
02 952 50 04
Email
matpu96@abv.bg
Website
matpu.com
Bus from Niš to Sofia
Ave. Duration
3 h
Frequency
Twice daily
Estimated price
$10 - $15
Schedules at
matpu.com
Blenda Tours
Phone
+(381)(10)346969
Website
redvoznje.net
Bus from Autokomanda to Dimitrovgrad
Ave. Duration
4 h 58 min
Frequency
Every 4 hours
Schedules at
pks.rs
Nikolic Prevoz D.O.O
Website
nikolicprevoz.rs
Bus from Belgrade to Negotin
Ave. Duration
4 h 21 min
Frequency
Twice daily
Estimated price
$17 - $21
Schedules at
nikolicprevoz.rs
Bus from Negotin to Vidin
Ave. Duration
1 h 30 min
Frequency
Once a week
Estimated price
$3 - $4
Schedules at
nikolicprevoz.rs
Avtogari
Email
office@avtogari.info
Website
avtogari.info
Bus from Vidin to Sofia
Ave. Duration
4 h
Frequency
5 times a day
Estimated price
$9 - $13
Schedules at
avtogari.info
BG Razpisanie
Website
bgrazpisanie.com
Bus from Vidin to Sofia
Ave. Duration
2 h 51 min
Frequency
Once daily
Estimated price
$11 - $14
Schedules at
bgrazpisanie.com
KARAT-S
Phone
+359 2 8120810
Email
operations@eurolines.bg
Website
karat-s.com
Bus from Vidin to Sofia
Ave. Duration
4 h 10 min
Frequency
Once daily
Estimated price
$12
Schedules at
karat-s.com
Other operators
BlaBlaCar
Website
blablacar.com
Rideshare from Beograd to Sofia
Ave. Duration
5 h 17 min
Frequency
Once daily
Estimated price
$11 - $20
Book at
blablacar.co.uk

Want to know more about travelling around Bulgaria

Rome2rio's Travel Guide series provide vital information for the global traveller. Filled with useful and timely travel information, the guides answer all the hard questions - such as 'How do I buy a ticket?', 'Should I book online before I travel? ', 'How much should I expect to pay?', 'Do the trains and buses have Wifi?' - to help you get the most out of your next trip.