The average train between Budapest and Subotica takes 6h 15m and the fastest train takes 4h 34m. The train service runs several times per day from Budapest to Subotica. 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 Budapest and Subotica. The earliest departure is at 5:44 AM in the morning, and the last departure from Budapest is at 9:59 PM which arrives into Subotica at 6:55 AM. All services require a transfer, and take on average 6h 15m. The schedules shown below are for the next available departures.

4h 40m • 1 change

4h 34m • 1 change
Arrives next day

8h 56m • 1 change

4h 40m • 1 change

4h 40m • 1 change

4h 40m • 1 change

4h 40m • 1 change
Want to know about travelling from Budapest to Subotica? 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 Budapest to Subotica. However, there are services departing from Budapest station and arriving at Subotica station via Szeged. The journey, including transfers, takes approximately 6h 15m.
Budapest to Subotica train services, operated by Hungarian Railways (MÁV), depart from Budapest-Nyugati station.
Budapest to Subotica train services, operated by Hungarian Railways (MÁV), arrive at Subotica station.
The distance between Budapest and Subotica is 162.6 km. The road distance is 249 km.
You can take a train from Budapest-Nyugati to Subotica via Szeged in around 4h 52m.