We recommend visiting them both and here you'll find how to get from one city to another (you'll love staying at 4-star Urban Boutique Hotel with helpful staff and great central location).
For getting from Ljubljana to Zagreb, you can easily hop on the train (the scenic ride through the hills and along Sava River), catch one of many daily bus (the cheapest option), rent a car and drive or even book a private car transfer (completely hassle-free).
It depends on your personal preferences and your budget, which one you'll choose.
This webpage contains affiliate links. Please read our disclosure policy.
It's easy to catch the train as the train stations in both cities are not far from the main squares. On average, it takes around 2h 20 minutes to travel from Ljubljana to Zagreb by train and you'll usually find 4 trains per day running on this route.
Onboard these trains you'll find modern comfortable seating and plenty of room for luggage. Tickets from Ljubljana to Zagreb train start from €25.
Trainline will help you to plan your journey and to find the cheapest tickets for trains. The process is easy and quick and you get electronic ticket by email.
There are around 10-12 buses between Ljubljana and Zagreb throughout the day and the bus journey takes from 2h 15min to 3h.
These buses depart from Ljubljana Bus Station and arrives to Zagreb Bus Station which is situated in the centre of the city. From the bus station, you will reach Jelacic Square, the main city square by a tram in only 10 minutes.
For a completely hassle-free travel between Ljubljana and Zagreb, opt for a private car transfer. We recommend Welcome Pickups company, which offers reliable transfers in many cities around the world.
You can be picked-up from anywhere in Ljubljana, including Ljubljana Airport, train and bus stations. To book your transfer, choose your pick-up point, date and drop-off location in Zagreb, book and your are all set.
The transfer between Ljubljana and Zagreb takes approximately 2 hours and costs around €265.