There are 7 ways to get from Serbia to Sofia by plane, bus, train, car, rideshare, or shuttle
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly
best- Fly from Belgrade Nikola Tesla Airport (BEG) to Sofia Airport (SOF)plane BEG - SOF
4h 18m$73–205Rideshare
cheapest- Take the rideshare from Beograd to Sofia391.2 km
5h 17m$12–20Bus
- Take the bus from Beograd, Autobuska stanica to Sofia Serdica Bus Stationbus
8h 39m$25–51Train
- Take the train from Beograd Centar to Nistrain Ir / ...
- Take the train from Niš to Dimitrovgradtrain
- Take the train from Kalotina - Zapad to Sofiatrain Ic
12h 56m$14–27Drive 391.3 km
- Drive from Belgrade to Sofiacar 391.3 km
3h 47m$62–89Bus #2
- Take the bus from Beograd, Autobuska stanica to Sofia Central Bus Stationbus
8h 39m$41–46Shuttle
- Take a shuttle bus from Beograd Centar to Sofia Airport
7h 33m
Belgrade Nikola Tesla Airport (BEG) to Sofia Airport (SOF) flights
Comparing Your Travel Options
The cheapest way to get from Serbia to Sofia is to rideshare which costs $12 - $20 and takes 5h 17m.
The fastest way to get from Serbia to Sofia is to drive which takes 3h 47m and costs $60 - $90.
No, there is no direct bus from Serbia to Sofia station. However, there are services departing from Mostar and arriving at Sofia Serdica Bus Station via Beograd, Autobuska stanica. The journey, including transfers, takes approximately 8h 39m.
No, there is no direct train from Serbia to Sofia. However, there are services departing from Beograd Centar and arriving at Sofia via Niš and Kalotina - Zapad. The journey, including transfers, takes approximately 12h 56m.
The distance between Serbia and Sofia is 379 km. The road distance is 391.3 km.
The best way to get from Serbia to Sofia without a car is to bus which takes 8h 39m and costs $25 - $55.
It takes approximately 4h 18m to get from Serbia to Sofia, including transfers.
Serbia to Sofia bus services, operated by Karat-S, depart from Beograd, Autobuska stanica station.
Serbia to Sofia train services, operated by Srbija Voz, depart from Beograd Centar station.
The best way to get from Serbia to Sofia is to fly which takes 4h 18m and costs $70 - $210. Alternatively, you can bus, which costs $25 - $55 and takes 8h 39m, you could also train, which costs $14 - $28 and takes 12h 56m.
What companies run services between Serbia and Sofia, Bulgaria?
Air Serbia flies from Belgrade Nikola Tesla Airport (BEG) to Sofia Airport (SOF) twice daily. Alternatively, Karat-S operates a bus from Beograd, Autobuska stanica to Sofia Serdica Bus Station once daily. Tickets cost $35–50 and the journey takes 7h 30m. Citylines also services this route 6 times a week.
- Website
- airserbia.com
Flights from Belgrade Nikola Tesla Airport to Sofia Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- $70–170
- Phone
- +381 11 360 28 99
- [email protected]
- Website
- srbijavoz.rs
Train from Beograd Centar to Nis
- Ave. Duration
- 5h 31m
- Frequency
- 4 times a day
- Estimated price
- $9–16
- Schedules at
- srbijavoz.rs
- 2nd Class
- $9–11
- 1st Class
- $12–16
Train from Niš to Dimitrovgrad
- Ave. Duration
- 4h
- Frequency
- Once daily
- Estimated price
- $3–6
- Schedules at
- srbijavoz.rs
- 2nd Class
- $3–4
- 1st Class
- $4–6
- Phone
- +359 2 931 11 11
- [email protected]
- Website
- Bulgarian Railways (BDZh)
Train from Kalotina - Zapad to Sofia
- Ave. Duration
- 1h 10m
- Frequency
- Twice a week
- Estimated price
- $1–3
- Website
- Bulgarian Railways (BDZh)
- 2nd Class
- $1–2
- 1st Class
- $2–3
- Phone
- +359 2 812 0 812
- [email protected]
- Website
- karat-s.com
Bus from Beograd, Autobuska stanica to Sofia Serdica Bus Station
- Ave. Duration
- 7h 30m
- Frequency
- Once daily
- Estimated price
- $35–50
- Schedules at
- karat-s.com
- Phone
- +359 0885700870
- [email protected]
- Website
- Citylines
Bus from Beograd, Autobuska stanica to Sofia Serdica Bus Station
- Ave. Duration
- 6h 30m
- Frequency
- 6 times a week
- Estimated price
- $25–45
- Website
- Citylines
- Phone
- +381 11 8728111
- [email protected]
- Website
- Trans-Jug
Bus from Beograd, Autobuska stanica to Sofia Central Bus Station
- Ave. Duration
- 7h 30m
- Frequency
- 3 times a week
- Estimated price
- $41–45
- Website
- Trans-Jug
- [email protected]
- Website
- vitosprint.com
Shuttle from Beograd Centar to Sofia Airport
- Ave. Duration
- 7h
- Frequency
- On demand
- Schedules at
- vitosprint.com
- Phone
- +3 318 576 2228
- Website
- BlaBlaCar
Rideshare from Beograd to Sofia
- Ave. Duration
- 5h 17m
- Frequency
- Once daily
- Estimated price
- $12–20
- Schedules at
- BlaBlaCar
Want to know more about travelling around the world?
Rome2Rio's Travel Guide series provide vital information for the global traveller. Read our range of informative guides on popular transport routes and companies - including Which side of Niagara Falls should I choose (and how do I get there)?, Best ways to travel around Australia, and Heading to Europe? Read this before you buy a Eurail Pass - to help you get the most out of your next trip.
Booking & Getting There
Serbia to Sofia bus services, operated by Karat-S, arrive at Sofia Serdica Bus Station.
Sofia is 1h ahead of Serbia. It is currently 1:25 PM in Serbia and 2:25 PM in Sofia.
Serbia to Sofia train services, operated by Srbija Voz, arrive at Nis station.
Yes, the driving distance between Serbia to Sofia is 391 km. It takes approximately 3h 47m to drive from Serbia to Sofia.
Book your Serbia to Sofia bus tickets online with 12go.asia.
There are 2271+ hotels available in Sofia.
Check out Blablacar's carpooling service for rideshare options between Serbia and Sofia. A great option if you don't have a driver's licence or want to avoid public transport.


















