Getting Around the Balkans by Public Transport

Travelling the Balkans without a car is easy and cheap, but the practical details work differently from Western Europe and catch many visitors off guard. This page collects what applies across the region, then points you to detailed, first-hand route guides.

Buying tickets

Online booking is often unavailable or unreliable. For several connections you buy at the station counter, sometimes only a day or two in advance, and cash is the safer bet — card is not accepted everywhere. English at the counter is usually not a problem.

Borders and passports

Many routes cross international borders, for example Bulgaria to Serbia or Serbia to Montenegro. Always carry your passport: you will need it on board, and sometimes already when buying your ticket.

Local transport in the cities

City transport is inexpensive, and in Belgrade it is currently free for everyone. Stops are usually right outside terminals and stations, so you rarely need a taxi.

From Sofia (Bulgaria)

Landing at Sofia Airport? Sofia Airport to the city centre covers the €0.80 metro on Line M4, what to do if you arrive at Terminal 1, and the gap after the last train around midnight.

The Seven Rila Lakes hike shows how to reach Bulgaria's most famous alpine lakes from Sofia by metro, bus and the tricky final leg up to Panichishte.

Bulgaria – the Seven Rila Lakes
Bulgaria – the Seven Rila Lakes, Credits: Photo by George Ivanov (https://unsplash.com/de/@george_ivanow)

Looking for an even bigger challenge? Mount Musala, the highest mountain in the entire Balkans (2,925 m), can also be reached without a car. This guide explains how to travel from Sofia Airport to Borovets by metro and bus, whether the Yastrebets gondola is worth taking, and what to expect on the hike to the summit.

Mount Musala
Mount Musala, Credits: kanpoan.net

The Sofia to Belgrade bus covers where to buy tickets, the transfer in Niš, the border crossing and where you actually arrive in Belgrade.

From Belgrade (Serbia)

Arriving by air? Belgrade Airport to the city center explains which free bus lines to take and how long the ride downtown takes.

The Belgrade to Bar train is one of Europe's most scenic rail journeys — ticket prices, sleeper options, and why you can only buy at the counter.

Beograd Centar
Beograd Centar, Credits: kanpoan.net

From Ljubljana (Slovenia)

Slovenia is the gentlest entry into the region, and most of the rules above do not apply here. The country is in the EU, in Schengen and in the eurozone: no passport check when you arrive from Austria or Italy, and cards work almost everywhere. One local warning instead — Ljubljana railway station is a large building site, so allow extra time to find your platform, and expect signage to be missing where you most need it.

Coming overland from Germany? Dresden to Ljubljana by train covers the Villach transfer, what the two-hour gap between connections really means, and where the journey is worth breaking.

Arriving by air? Ljubljana Airport to the city centre explains the Arriva coach from stand 28, the €4 fare paid to the driver, why one driver took cash and the other did not, and the last departures at 20:10 and 21:00.

The train to Lake Bled is the classic day trip: tickets from the counter in the old station building, €15.40 return, and an unsignposted transfer at Jesenice that catches out most first-timers.

Lake Bled
Lake Bled, Credits: kanpoan.net

From Maribor (Slovenia)

Slovenia's second city is the gateway to the east of the country and to Ptuj, its oldest town. Guides for the train from Ljubljana and the short hop on to Ptuj are in preparation.

This collection grows as new routes are added.

FAQ - Quick Guide

Yes. Buses and trains connect all major cities in the Balkans, and fares are low by Western European standards. The practical details work differently, though: online booking is often unavailable, several connections are sold at the station counter only, and cash is more reliable than a card. City transport stops are usually right outside the terminals, so you rarely need a taxi.

For many Balkan routes you buy at the station counter rather than online, sometimes only a day or two before departure. Card payment is not accepted everywhere, so carry cash in the local currency. Staff at the counters usually speak enough English. The Belgrade to Bar train is one example where counter purchase is the only option.

Yes, always carry your passport. Many routes cross international borders — Bulgaria to Serbia, or Serbia to Montenegro — and you will need it on board during the crossing. On some connections you are asked for it already when buying the ticket.

In Sofia, a single metro ticket costs €0.80, including the M4 line from the airport to the city centre. In Belgrade, city transport is currently free for all passengers, including the bus lines from the airport into town.

Buses run between Sofia and Belgrade with a transfer in Niš in Serbia. Tickets are bought at the bus station rather than online, and you need your passport for the border crossing. The journey ends at Belgrade's main bus terminal, from where free city transport takes you into the centre.

Geographically only in part, and most Slovenes do not describe their country as Balkan. For travel planning it belongs on this page anyway, because Ljubljana is where a large share of overland Balkan trips begin. Practically it works nothing like the rest of the region: Slovenia is in the EU, in Schengen and in the eurozone, so there are no border checks arriving from Austria or Italy, and card payment is accepted almost everywhere.

Trains run roughly every two hours from Ljubljana to Bled Jezero, with a change at Jesenice. A single ticket covers both legs and costs €15.40 return, bought at the counter in the old station building. The transfer at Jesenice is not signposted and the train number may not match your ticket, so ask on the platform.

We value your privacy

To provide the best experience, we use OpenStreetMap for our routes and Plausible, cookie-free analytics. We only set essential cookies to keep your session secure.

Privacy Policy