The average train between Belgrade and Craiova takes 19h 58m and the fastest train takes 16h 25m. The train service runs several times per day from Belgrade to Craiova. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Trains run twice daily between Belgrade and Craiova. The earliest departure is at 12:00 PM in the afternoon, and the last departure from Belgrade is at 6:00 PM which arrives into Craiova at 7:07 PM. All services require a transfer at Subotica and take an average of 19h 58m. The schedules shown below are for the next available departures.
Arrives next day



17h 25m • 3 changes
Arrives next day



25h 7m • 3 changes
Arrives next day



17h 25m • 3 changes
Arrives next day



25h 7m • 3 changes
Arrives next day



17h 25m • 3 changes
Arrives next day



25h 7m • 3 changes
Arrives next day



17h 25m • 3 changes
Arrives next day



25h 7m • 3 changes
Arrives next day



17h 25m • 3 changes
Arrives next day



25h 7m • 3 changes
Want to know about travelling from Belgrade to Craiova? We have put together a list of the most frequently asked questions from our users such as: What is the cheapest mode of transport? What is the quickest option? How much do tickets usually cost? and many more.
No, there is no direct train from Belgrade to Craiova. However, there are services departing from Belgrade station and arriving at Craiova station via Subotica. The journey, including transfers, takes approximately 19h 58m.
Belgrade to Craiova train services, operated by Srbija Voz, depart from Beograd Centar station.
Belgrade to Craiova train services, operated by Srbija Voz, arrive at Craiova station.
The distance between Belgrade and Craiova is 269.7 km. The road distance is 761 km.
You can take a train from Beograd Centar to Craiova via Subotica, Szeged, and Bekescsaba in around 16h 44m.