Croatia's trains link Zagreb with Split, Rijeka, Osijek and the north-east, and with Ljubljana, Vienna and Munich abroad, but there is no railway to Dubrovnik, no train along the coast, and only one direct daytime train a day between Zagreb and Split, which takes about eight hours. The national operator is HŽ Putnički prijevoz (HŽPP). Fares are low (about €15 from Zagreb to Split when booked online), and the scenery on the line through Lika is a reason to ride it. For most coastal trips, though, the bus is faster and runs far more often. This guide sets out what the trains actually cover, using HŽPP's own journey planner.
Quick facts (checked October 2026 in HŽPP's planner, for weekday trains in October and November 2026)
- Zagreb–Split: 1 direct daytime train each way, about 8 hours, from €15.06 online in second class
- Zagreb–Rijeka: 2 direct trains a day, about 4–5 hours, €7.97
- Zagreb–Osijek: several direct trains, about 5½–6 hours, roughly €15–17
- Dubrovnik, Makarska and the islands: no trains; Zadar: no trains in the planner on the dates we checked
- Zagreb–Ljubljana: 5 direct trains, about 2½ hours
- Engineering works are frequent: check the planner for your exact date
Zagreb's main railway station, Glavni kolodvor, the hub of the Croatian network. Image: Miroslav.vajdic, CC BY-SA 4.0, via Wikimedia Commons.
Where can you go by train in Croatia?
Almost every long-distance line starts at Zagreb Glavni kolodvor, the main station facing King Tomislav Square. From there, the network runs in four main directions:
- South-west to Rijeka, through Karlovac and Ogulin, over the Gorski kotar mountains.
- South to Split, branching off the Rijeka line at Oštarije and running through Lika and Knin. A branch from Perković serves Šibenik.
- East to Slavonia, along the old main line to Slavonski Brod and Vinkovci, with branches to Osijek and Vukovar.
- North to Varaždin, Čakovec and Koprivnica, and west to the Slovenian border.
Istria has its own short network (Pula–Pazin–Buzet) that connects to Slovenia but not to the rest of Croatia by rail. HŽPP's planner sends Zagreb–Pula journeys through several changes, including a bus, and they take most of the day.
Zagreb to Split by train
On the dates we checked in the HŽPP planner, there was one direct daytime train each way:
- Zagreb 13:49 → Split 21:47 (7 hours 58 minutes)
- Split 07:54 → Zagreb 16:04 (8 hours 10 minutes)
A second-class ticket bought online cost €15.06, including HŽPP's online and "by train to the sea" discounts, and seat reservations are available on this train. The route climbs through Lika, past the Velebit range and down through Knin to the Dalmatian coast: a long ride, but a scenic one.
A train on the Lika line at Lovinac, between Gospić and Knin. Image: Falk2, CC BY-SA 4.0, via Wikimedia Commons.
Two cautions. First, the line is being repaired: in October 2026 HŽPP replaced some trains between Split and Dujmovača with buses because of tunnel works. Second, the timetable changes every December, and summer timetables can differ. Check the planner for your travel date rather than relying on these times.
Split railway station, at the edge of the old town next to the ferry port and bus station. Image: Matti Blume, CC BY-SA 4.0, via Wikimedia Commons.
Split station is right next to the bus station and ferry port, a short walk from Diocletian's Palace. For Šibenik, change at Perković: the planner's best option from Zagreb on our dates left at 13:49 and arrived at 21:32.
Zagreb to Rijeka by train
On the dates we checked there were two direct trains from Zagreb to Rijeka, at 08:30 (arriving 13:23) and 16:12 (arriving 20:19), and two direct trains back, at 05:17 and 13:40. The fare was €7.97. Other options involve changes, often with a replacement bus while works are under way. In October 2026 parts of the line between Karlovac and Ogulin, and between Plase and Rijeka, were closed on weekdays for works, with buses replacing trains.
Rijeka railway station, the terminus of the line from Zagreb through Gorski kotar. Image: Falk2, CC BY-SA 4.0, via Wikimedia Commons.
Zagreb to Osijek and eastern Croatia
Slavonia is where the train makes most sense in Croatia: the routes are flat, and the cities sit on or near the line. On the dates we checked, direct trains left Zagreb for Osijek at 06:39, 07:27 and in the afternoon, taking about five and a half to six hours, with fares of roughly €15–17. Other connections change at Vinkovci or Našice. Works were affecting this line too in autumn 2026, with buses replacing trains on some sections.
Osijek railway station, the main station of eastern Croatia. Image: Nils Öberg, CC BY-SA 3.0, via Wikimedia Commons.
What the trains don't cover
- Dubrovnik has no railway. Travel by bus, car, ferry or plane.
- Zadar: HŽPP's planner returned no trains to Zadar on the dates we checked. Use the bus.
- The coast between Rijeka and Split, including Makarska, Omiš and the Kvarner and Dalmatian islands. There is no coastal railway.
- Plitvice Lakes, which has no station. Buses on the Zagreb–Zadar road stop at the park entrances.
International trains: Ljubljana, Vienna, Munich and Budapest
International times below are from the Austrian railways (ÖBB) planner, which covers Croatian cross-border trains, for a weekday in October 2026.
- Ljubljana: five direct trains from Zagreb, at 05:11, 08:16, 10:28, 12:50 and 20:32, taking about 2½ hours. Other connections need a change.
- Vienna: a direct EuroCity left Zagreb at 07:06 and reached Wien Hauptbahnhof at 14:07, via Maribor and Graz. Other connections change in Slovenia or Austria.
- Munich: a direct daytime EuroCity left Munich at 10:16 and reached Zagreb at 19:20, and a EuroNight sleeper left Munich in the late evening and arrived in Zagreb the next morning. Some trains through Slovenia were affected by engineering works.
- Budapest: the planner offered no direct train on the date we checked. The line towards Hungary through Koprivnica had engineering closures in October 2026, and the suggested journeys went through Slovenia and Austria, taking nine hours or more.
The EuroCity "Croatia" between Vienna and Zagreb, photographed at Graz in 2016. Image: NAC, CC BY-SA 4.0, via Wikimedia Commons.
HŽPP also runs short cross-border local trains to Slovenia and Hungary, including a summer service between Pula and Divača in Slovenia (27 June to 30 August in 2026). These are useful for local hops, not for long trips.
Can you get to Croatia by train from London or the UK?
Yes, but it is a two-day trip. The usual route is the Eurostar from London to Paris or Brussels, onward high-speed trains to Munich, and then either the daytime EuroCity or the overnight sleeper from Munich to Zagreb. From Zagreb, continue to Split by the daily train or by bus. Plan it with a European journey planner, book each leg separately, and allow time for connections, as engineering works in Slovenia and Austria can change timings.
Buying tickets
HŽPP sells e-tickets for domestic trains on its website and in its smartphone app. Online tickets carry the passenger's name and are valid only for that person, and the online fares we saw included a discount over the base price. You can also buy at station ticket offices. For a discount fare, carry the card that proves you are eligible, as the conductor may ask to see it.
A ticket machine on platform 1 at Zagreb's main station. Image: Koreanovsky, CC BY-SA 4.0, via Wikimedia Commons.
International tickets are sold at international ticket counters in larger stations and through foreign railways' websites. Croatia is one of the countries covered by the Interrail and Eurail global passes, which HŽPP lists among its international offers; check whether your train needs a reservation.
Tips for train travel in Croatia
- Check the planner on the day before you travel. Works notices are posted on HŽPP's website, and a stretch of the route may be served by a replacement bus, which adds time and a change.
- Book the Split train online in summer. It is the only direct daytime train, and a reservation guarantees a seat.
- Bring food and water for long journeys. Eight hours through Lika passes few towns, and you shouldn't count on buying food on board.
- Use the planner's "direct trains" filter. Without it, HŽPP's planner also lists journeys with two or three changes that take much longer.
- Plan for a late arrival in Split. The southbound train reaches Split late in the evening, so book your first night near the station or the old town rather than on an island.
When is the bus better than the train?
Most of the time on the coast. Buses run between Zagreb and Split many times a day on the motorway and are usually faster than the single daytime train; they also serve Zadar, Šibenik, Makarska, Dubrovnik and the Istrian towns, none of which have useful rail links from Zagreb. See our guide to public transport in Croatian cities for getting around once you arrive.
Take the train if you are travelling between Zagreb and Rijeka, Osijek or Ljubljana; if you want the Lika scenery on the way to Split and have a day to spare; or if you are arriving from Austria, Slovenia or Germany by rail.