The average train between Belgrade and Vienna takes 13h 40m and the fastest train takes 9h 20m. The train runs, on average, 6 times per week from Belgrade to Vienna. 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 6 times a week between Belgrade and Vienna. The earliest departure is at 6:00 AM in the morning, and the last departure from Belgrade is at 6:00 PM which arrives into Vienna at 11:20 AM. All services require a transfer at Subotica and take an average of 13h 40m. The schedules shown below are for the next available departures.




9h 20m • 4 changes




10h 20m • 4 changes




9h 20m • 4 changes
Arrives next day




18h 20m • 4 changes
Want to know about travelling from Belgrade to Vienna? 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 Vienna. However, there are services departing from Belgrade station and arriving at Vienna station via Subotica. The journey, including transfers, takes approximately 13h 40m.
Belgrade to Vienna train services, operated by Srbija Voz, depart from Beograd Centar station.
Belgrade to Vienna train services, operated by Srbija Voz, arrive at Wien Hbf station.
The distance between Belgrade and Vienna is 491.2 km. The road distance is 667 km.
You can take a train from Beograd Centar to Wien Hbf via Subotica, Szeged, Koebanya-Kispest, and Budapest-Kelenfoeld in around 10h 39m.