The average bus between Zagreb and Belgrade takes 5h 34m and the fastest bus takes 5h 30m. The bus service runs several times per day from Zagreb to Belgrade. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Buses run every 4 hours between Zagreb and Belgrade. The earliest departure is at 6:00 AM in the morning, and the last departure from Zagreb is at 10:15 PM which arrives into Belgrade at 4:10 AM. All services run direct with no transfers required, and take on average 5h 34m. The schedules shown below are for the next available departures.
Arrives next day
Want to know about travelling from Zagreb to Belgrade? 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.
Yes, there is a direct bus departing from Zagreb station and arriving at Belgrade station. Services depart every 4 hours, and operate Once daily. The journey takes approximately 5h 34m.
Zagreb to Belgrade bus services, operated by FlixBus, depart from Zagreb station.
Zagreb to Belgrade bus services, operated by FlixBus, arrive at Belgrade bus station.
Book your Zagreb to Belgrade bus tickets online with FlixBus.
The distance between Zagreb and Belgrade is 368.4 km. The road distance is 387 km.
FlixBus operates a bus from Zagreb to Belgrade bus station 5 times a day. Tickets cost RSD 3,800–6,500 and the journey takes 5h 30m.