There are 4 ways to get from Craiova to Sofia by bus, train, or car
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Bus
best- Take the bus from Craiova to Calafatbus
- Take the bus from Vidin to Sofia Central Bus Stationbus
7h 17mTrain
cheapest- Take the train from Craiova to Vidintrain 1091
- Take the train from Vidin to Sofia Severtrain Ic
8h 53m$16–19Drive 291.6 km
- Drive from Craiova to Sofiacar 291.6 km
4h 50m$56–80Train, bus
- Take the train from Craiova to Vidintrain
- Take the bus from Vidin to Vratsabus
- Take the bus from Vratsa to Sofiabus
10h 4m
Craiova to Sofia by train
Comparing Your Travel Options
The cheapest way to get from Craiova to Sofia is to train which costs $16 - $20 and takes 8h 53m.
The fastest way to get from Craiova to Sofia is to drive which takes 4h 50m and costs $55 - $80.
No, there is no direct bus from Craiova to Sofia station. However, there are services departing from Craiova and arriving at Sofia Central Bus Station via Vidin. The journey, including transfers, takes approximately 7h 17m.
No, there is no direct train from Craiova to Sofia. However, there are services departing from Craiova and arriving at Sofia Sever via Vidin. The journey, including transfers, takes approximately 8h 53m.
The distance between Craiova and Sofia is 371 km. The road distance is 291.6 km.
The best way to get from Craiova to Sofia without a car is to train which takes 8h 53m and costs $16 - $20.
It takes approximately 7h 17m to get from Craiova to Sofia, including transfers.
Craiova to Sofia bus services, operated by B&B Ilan Travel, depart from Craiova station.
Craiova to Sofia train services, operated by Romanian Railways (CFR), depart from Craiova station.
The best way to get from Craiova to Sofia is to bus which takes 7h 17m and costs . Alternatively, you can train, which costs $16 - $20 and takes 8h 53m.
What companies run services between Craiova, Romania and Sofia, Bulgaria?
You can take a bus from Craiova to Sofia Central Bus Station via Calafat and Vidin in around 7h 17m. Alternatively, you can take a train from Craiova to Sofia Sever via Vidin in around 8h 53m.
- Phone
- 0219521
- Website
- Romanian Railways (CFR)
Train from Craiova to Vidin
- Ave. Duration
- 3h 13m
- Frequency
- Once daily
- Estimated price
- $12–14
- Website
- Romanian Railways (CFR)
Train from Craiova to Vidin
- Ave. Duration
- 3h 13m
- Frequency
- Once daily
- Estimated price
- $12–14
- Website
- Romanian Railways (CFR)
- Phone
- +359 2 931 11 11
- [email protected]
- Website
- Bulgarian Railways (BDZh)
Train from Vidin to Sofia Sever
- Ave. Duration
- 4h 40m
- Frequency
- 3 times a day
- Estimated price
- $4–6
- Website
- Bulgarian Railways (BDZh)
- 2nd Class
- $4–6
- 1st Class
- $4–6
- Phone
- +40 768 922 512
- [email protected]
- Website
- bbilantravel.ro
Bus from Craiova to Calafat
- Ave. Duration
- 2h
- Frequency
- 4 times a day
- Schedules at
- bbilantravel.ro
- Phone
- 02/813 33 98
- [email protected]
- Website
- aleksiev-91.com
Bus from Vidin to Sofia Central Bus Station
- Ave. Duration
- 4h
- Frequency
- 5 times a day
- Schedules at
- aleksiev-91.com
- Website
- planinite.info
Bus from Vidin to Vratsa
- Ave. Duration
- 3h
- Frequency
- Every 3 hours
- Schedules at
- planinite.info
- Website
- varshets.info
Bus from Vratsa to Sofia
- Ave. Duration
- 1h 51m
- Frequency
- Once daily
- Schedules at
- varshets.info
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 4 of the smartest ways to explore Australia, What are the different types of Renfe trains in Spain?, and How to get from Stansted Airport into central London - to help you get the most out of your next trip.
Booking & Getting There
Craiova to Sofia bus services, operated by B&B Ilan Travel, arrive at Calafat station.
Craiova to Sofia train services, operated by Romanian Railways (CFR), arrive at Vidin station.
Yes, the driving distance between Craiova to Sofia is 292 km. It takes approximately 4h 50m to drive from Craiova to Sofia.
Book your Craiova to Sofia bus tickets online with Omio.
There are 2271+ hotels available in Sofia.












