---
title: "Trains from Zagreb to Ljubljana | EveryRail"
description: "Six direct trains run from Zagreb to Ljubljana most days, taking about 2 hours 30 minutes, with a EUR 9 station fare and no reservation needed."
image: "https://everyrail.com/api/route-image/zagreb-to-ljubljana/"
---

[Home](<https://everyrail.com/>)[Europe by train](<https://everyrail.com/trains/>)[Croatia](<https://everyrail.com/croatia/>)Zagreb to Ljubljana by train

[Home](<https://everyrail.com/>)[Europe by train](<https://everyrail.com/trains/>)[Croatia](<https://everyrail.com/croatia/>)Zagreb to Ljubljana by train

**Share**

-
- [Share on WhatsApp](<https://everyrail.com/trains/zagreb-to-ljubljana/#>)
- [Share on X](<https://everyrail.com/trains/zagreb-to-ljubljana/#>)
- [Share on Facebook](<https://everyrail.com/trains/zagreb-to-ljubljana/#>)
- [Share by email](<https://everyrail.com/trains/zagreb-to-ljubljana/#>)

**On this page**

- [About Zagreb to Ljubljana by train](<https://everyrail.com/trains/zagreb-to-ljubljana/#about>)
- [Where to book](<https://everyrail.com/trains/zagreb-to-ljubljana/#where-to-buy>)
- [Find places to stay in Ljubljana](<https://everyrail.com/trains/zagreb-to-ljubljana/#places-to-stay>)
- [Frequently asked questions](<https://everyrail.com/trains/zagreb-to-ljubljana/#frequently-asked-questions>)
- [More routes](<https://everyrail.com/trains/zagreb-to-ljubljana/#more-routes>)

[Book now](<https://everyrail.com/go/omio/>)

Last updated September 2026

# Zagreb to Ljubljana by train

Six direct trains run from Zagreb to Ljubljana most days, taking about 2 hours 30 minutes, with a EUR 9 station fare and no reservation needed.

![Ljubljana cityscape, the destination for this Zagreb to Ljubljana train journey](<https://znmmduxdxnnnebgevjdu.supabase.co/storage/v1/object/public/blog-media/entity-featured/city-ljubljana.webp>)

Origin

[Zagreb](<https://everyrail.com/croatia/zagreb/>)

Destination

[Ljubljana](<https://everyrail.com/slovenia/ljubljana/>)

Countries

[Croatia](<https://everyrail.com/croatia/>), [Slovenia](<https://everyrail.com/slovenia/>)

There is no shortage of direct trains between [Zagreb](<https://everyrail.com/croatia/zagreb/>) and [Ljubljana](<https://everyrail.com/slovenia/ljubljana/>). Six run most days, with two extra weekend services that have extended the route to Pula on Croatia's Istrian coast. The real planning question on this corridor is not whether a direct train exists, but which of the six fits your day.

## Zagreb to Ljubljana by train at a glance

| Detail | What to expect |
| --- | --- |
| Direct service | Yes, every regular departure runs without a change |
| Typical journey time | About 2 hours 20 minutes to 2 hours 40 minutes, depending on the train |
| Daily frequency | 6 direct trains each way most days, plus a Friday departure and Sunday return that have extended to Pula |
| Departure station | Zagreb Glavni kolodvor (Zagreb Main Station) |
| Arrival station | Ljubljana railway station |
| Operators | HŽPP (Croatia) and SŽ (Slovenia), running the corridor jointly |
| Fare anchor | From EUR 9 one way in 2nd class with the Zagreb Spezial or Ljubljana Spezial fare |
| Seat reservation | Not required, and not offered, on this route |

These are representative times and fares from the current published timetable. Treat them as orientation and check the exact departure when you book.

## Frequency, journey time, and which train to catch

Two kinds of train share this route, and either one gets you there. The EuroCity and EuroNight-numbered services, [HŽPP](<https://everyrail.com/croatia/hzpp/>)'s locomotive-hauled trains, are the faster option and cover the corridor in as little as 2 hours 20 minutes. The Stadler Flirt regional trains, run by SŽ, are newer and more comfortable for the price: free WiFi and a power socket at every pair of seats, though no catering, so bring your own food and drink. Both categories call at the same two stations and cost the same fare, so choose the departure time that suits your day rather than the train type.

Both kinds of train also follow the same route, tracking the Sava river through the hills between the two capitals. If you were hoping the cheaper regional train meant a lesser view, it does not.

On top of the six daily services, an extra Friday departure and Sunday return extend this route to Pula, the first direct rail link between Zagreb, Ljubljana and Pula in more than 30 years. That extension runs as part of the timetable valid from 14 June 2026, confirmed current on both HŽPP's and SŽ's own timetable pages, not a one-off pilot from a past season.

## Buying your ticket, and why not to book online

The cheapest way to travel this route is also the simplest. Both HŽPP and SŽ sell a fixed EUR 9 one-way fare in 2nd class, the Zagreb Spezial or Ljubljana Spezial depending on which direction you check it from, with a return priced at EUR 18. This fare is sold only at the station ticket window, not online, so there is nothing to book in advance and nothing to reserve. Turn up and buy on the day.

Travelling as a group changes the maths. The City Star fare prices tickets per group of two to five people rather than per person, and it can beat the standard fare for families or friends travelling together. Children aged 6 to 15 pay half the adult Spezial fare.

If you are relying on an Interrail or Eurail Pass, both HŽPP and SŽ are long-standing participating railways, so this corridor generally falls within pass coverage. Since no reservation exists on this route, there is nothing extra to book on top of the pass itself. Confirm current pass conditions before you travel, since scheme terms can change.

## Stations at each end

Zagreb Glavni kolodvor is the only Zagreb station this route uses, so there is no station choice to make on departure.

Ljubljana's railway station is central too. HŽPP itself points arriving passengers straight to Prešeren Square and the Triple Bridge as the natural starting point for exploring the city on foot.

## Crossing the Croatia-Slovenia border

Croatia and Slovenia are both part of the Schengen Area, and Croatia's internal border checks were lifted from 1 January 2023, confirmed by the Council of the EU. This crossing does not normally involve routine passport checks. Carry a valid passport or national ID card anyway: Schengen states can reintroduce temporary border controls, and conductors on this route still walk through the carriages to check tickets during the crossing.

## Where to book

### Train tickets

- Omio
  Omio connects you with over 1,000 transport providers - trains, buses, flights, and more - to simplify your travel planning.
  [Check times & prices](<https://everyrail.com/go/omio/r/zagreb/ljubljana/>)

### Train service

- [HŽPP](<https://everyrail.com/croatia/hzpp/>)
  HŽPP is Croatia's national rail operator, running domestic InterCity trains alongside international EuroCity and night services to neighbouring countries.
  [Official website](<https://www.hzpp.hr/>)
  [Check times & prices](<https://everyrail.com/go/omio/r/zagreb/ljubljana/>)
- [SŽ](<https://everyrail.com/slovenia/sz/>)
  SŽ (Slovenske železnice) is Slovenia's national rail operator, running InterCity Slovenija tilting trains plus EuroCity links to Austria and Croatia.
  [Official website](<https://potniski.sz.si/>)
  [Check times & prices](<https://everyrail.com/go/omio/r/zagreb/ljubljana/>)

## Find places to stay in Ljubljana

[![Bright bedroom with white bedding and a breakfast tray on the bed](<https://everyrail.com/images/accommodation-card-2-800.webp>)**Browse stays in Ljubljana**Hotels and apartments via Booking.com](<https://www.jdoqocy.com/click-101845132-17323134?sid=route-zagreb-to-ljubljana-197765&url=https%3A%2F%2Fwww.booking.com%2Fsearchresults.en-gb.html%3Fss%3DLjubljana>)

## Frequently asked questions

### Is there a direct train from Zagreb to Ljubljana?

Yes. Six direct trains run most days in each direction, taking about 2 hours 20 minutes to 2 hours 40 minutes, with an extra Friday departure and Sunday return that extend the route to Pula as part of the current timetable.

### How much does the train from Zagreb to Ljubljana cost?

Both HŽPP and SŽ sell a fixed EUR 9 one-way fare in 2nd class, the Zagreb Spezial or Ljubljana Spezial, with a return at EUR 18. Group and child fares are also available.

### Do I need to reserve a seat on this train?

No. Seat reservation is neither required nor offered on this route. Buy your ticket at the station and board.

### Is the Zagreb to Ljubljana train scenic?

Yes. Both the EuroCity trains and the Stadler Flirt regional trains follow the same route along the Sava river through the hills, so the view is the same whichever train you choose.

### Can I use an Interrail or Eurail Pass on this route?

Generally yes. HŽPP and SŽ are both long-standing participating railways, and since no reservation exists on this corridor, there is nothing extra to book beyond the pass itself. Check current pass conditions before you travel.

## More routes

[![St. Mark's Church in Zagreb](<https://everyrail.com/api/route-image/budapest-to-zagreb/>)Budapest to ZagrebBudapest to Zagreb: direct IC trains take 5.5 to 6.5h, advance tickets from \~€15. Up to 2 direct daily departures from Budapest Keleti.](<https://everyrail.com/trains/budapest-to-zagreb/>)[![Ljubljana riverside and pink church](<https://everyrail.com/api/route-image/geneva-to-ljubljana/>)Geneva to LjubljanaGeneva to Ljubljana has no direct train. All routes need 2 to 3 changes via Zürich and Innsbruck, taking 11.5 to 14 hours. Fares from €72.](<https://everyrail.com/trains/geneva-to-ljubljana/>)[![St. Mark's Church in Zagreb](<https://everyrail.com/api/route-image/ljubljana-to-zagreb/>)Ljubljana to ZagrebLjubljana to Zagreb: 2 to 4 direct trains daily taking 2h9m to 2h40m. Advance tickets from €9 to 20 one way. No seat reservation required.](<https://everyrail.com/trains/ljubljana-to-zagreb/>)[![Old Town Square and Church of Our Lady before Tyn in Prague](<https://everyrail.com/api/route-image/zagreb-to-prague/>)Zagreb to PragueNo direct Zagreb to Prague train. Most rail routes connect via Vienna; compare ČD fares with RegioJet and other booking results.](<https://everyrail.com/trains/zagreb-to-prague/>)[![View of Split, Croatia](<https://everyrail.com/api/route-image/zagreb-to-split/>)Zagreb to SplitZagreb to Split trains: daily direct service around 7h58, seasonal morning and night trains, fares about EUR 15-EUR 28 plus reservation.](<https://everyrail.com/trains/zagreb-to-split/>)

```json
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "Organization",
      "@id": "https://everyrail.com/#organization",
      "name": "EveryRail",
      "url": "https://everyrail.com/",
      "logo": {
        "@type": "ImageObject",
        "url": "https://everyrail.com/_astro/everyrail-logomark-2026.VJ4vNX1T.webp",
        "@id": "https://everyrail.com/#organization-logo-1"
      }
    },
    {
      "@type": "WebSite",
      "@id": "https://everyrail.com/#website",
      "name": "EveryRail",
      "url": "https://everyrail.com/",
      "publisher": {
        "@id": "https://everyrail.com/#organization"
      },
      "inLanguage": "en"
    },
    {
      "@type": "WebPage",
      "@id": "https://everyrail.com/trains/zagreb-to-ljubljana/#webpage",
      "name": "Trains from Zagreb to Ljubljana | EveryRail",
      "description": "Train travel information for Zagreb to Ljubljana. Origin: Zagreb. Destination: Ljubljana.",
      "about": {
        "@id": "https://everyrail.com/trains/zagreb-to-ljubljana/#traintrip"
      },
      "isPartOf": {
        "@id": "https://everyrail.com/#website"
      },
      "publisher": {
        "@id": "https://everyrail.com/#organization"
      },
      "url": "https://everyrail.com/trains/zagreb-to-ljubljana/",
      "dateModified": "2026-09-03T16:47:57.522Z",
      "inLanguage": "en"
    },
    {
      "@type": "TrainTrip",
      "@id": "https://everyrail.com/trains/zagreb-to-ljubljana/#traintrip",
      "provider": [
        {
          "@type": "Organization",
          "@id": "https://everyrail.com/croatia/hzpp/#organization",
          "name": "HŽPP",
          "url": "https://www.hzpp.hr"
        },
        {
          "@type": "Organization",
          "@id": "https://everyrail.com/slovenia/sz/#organization",
          "name": "SŽ",
          "url": "https://potniski.sz.si"
        }
      ]
    },
    {
      "@type": "FAQPage",
      "mainEntity": [
        {
          "@type": "Question",
          "name": "Is there a direct train from Zagreb to Ljubljana?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "Yes. Six direct trains run most days in each direction, taking about 2 hours 20 minutes to 2 hours 40 minutes, with an extra Friday departure and Sunday return that extend the route to Pula as part of the current timetable.",
            "@id": "https://everyrail.com/trains/zagreb-to-ljubljana/#faqpage-mainEntity-1-acceptedAnswer-1",
            "inLanguage": "en"
          },
          "@id": "https://everyrail.com/trains/zagreb-to-ljubljana/#faqpage-mainEntity-1",
          "inLanguage": "en"
        },
        {
          "@type": "Question",
          "name": "How much does the train from Zagreb to Ljubljana cost?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "Both HŽPP and SŽ sell a fixed EUR 9 one-way fare in 2nd class, the Zagreb Spezial or Ljubljana Spezial, with a return at EUR 18. Group and child fares are also available.",
            "@id": "https://everyrail.com/trains/zagreb-to-ljubljana/#faqpage-mainEntity-2-acceptedAnswer-2",
            "inLanguage": "en"
          },
          "@id": "https://everyrail.com/trains/zagreb-to-ljubljana/#faqpage-mainEntity-2",
          "inLanguage": "en"
        },
        {
          "@type": "Question",
          "name": "Do I need to reserve a seat on this train?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "No. Seat reservation is neither required nor offered on this route. Buy your ticket at the station and board.",
            "@id": "https://everyrail.com/trains/zagreb-to-ljubljana/#faqpage-mainEntity-3-acceptedAnswer-3",
            "inLanguage": "en"
          },
          "@id": "https://everyrail.com/trains/zagreb-to-ljubljana/#faqpage-mainEntity-3",
          "inLanguage": "en"
        },
        {
          "@type": "Question",
          "name": "Is the Zagreb to Ljubljana train scenic?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "Yes. Both the EuroCity trains and the Stadler Flirt regional trains follow the same route along the Sava river through the hills, so the view is the same whichever train you choose.",
            "@id": "https://everyrail.com/trains/zagreb-to-ljubljana/#faqpage-mainEntity-4-acceptedAnswer-4",
            "inLanguage": "en"
          },
          "@id": "https://everyrail.com/trains/zagreb-to-ljubljana/#faqpage-mainEntity-4",
          "inLanguage": "en"
        },
        {
          "@type": "Question",
          "name": "Can I use an Interrail or Eurail Pass on this route?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "Generally yes. HŽPP and SŽ are both long-standing participating railways, and since no reservation exists on this corridor, there is nothing extra to book beyond the pass itself. Check current pass conditions before you travel.",
            "@id": "https://everyrail.com/trains/zagreb-to-ljubljana/#faqpage-mainEntity-5-acceptedAnswer-5",
            "inLanguage": "en"
          },
          "@id": "https://everyrail.com/trains/zagreb-to-ljubljana/#faqpage-mainEntity-5",
          "inLanguage": "en"
        }
      ],
      "@id": "https://everyrail.com/trains/zagreb-to-ljubljana/#faqpage",
      "inLanguage": "en"
    },
    {
      "@type": "BreadcrumbList",
      "@id": "https://everyrail.com/trains/zagreb-to-ljubljana/#breadcrumb",
      "itemListElement": [
        {
          "@type": "ListItem",
          "position": 1,
          "name": "Home",
          "item": "https://everyrail.com/",
          "@id": "https://everyrail.com/trains/zagreb-to-ljubljana/#breadcrumb-itemListElement-1"
        },
        {
          "@type": "ListItem",
          "position": 2,
          "name": "Europe by train",
          "item": "https://everyrail.com/trains/",
          "@id": "https://everyrail.com/trains/zagreb-to-ljubljana/#breadcrumb-itemListElement-2"
        },
        {
          "@type": "ListItem",
          "position": 3,
          "name": "Croatia",
          "item": "https://everyrail.com/croatia/",
          "@id": "https://everyrail.com/trains/zagreb-to-ljubljana/#breadcrumb-itemListElement-3"
        },
        {
          "@type": "ListItem",
          "position": 4,
          "name": "Zagreb to Ljubljana by train",
          "item": "https://everyrail.com/trains/zagreb-to-ljubljana/",
          "@id": "https://everyrail.com/trains/zagreb-to-ljubljana/#breadcrumb-itemListElement-4"
        }
      ],
      "inLanguage": "en"
    }
  ]
}
```
