There are 13 ways to get from Locarno to Zagreb by train, plane, bus, night train, shuttle, train (Trenitalia), or car
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train to Zurich Airport, fly to Zagreb Franjo Tuđman Airport
best- Take the train from Bellinzona to Zuerich Hbtrain
- Fly from Zurich Airport (ZRH) to Zagreb Franjo Tuđman Airport (ZAG)plane ZRH - ZAG
7h 19m€135–338Train, bus
cheapest- Take the train from Locarno to Milano Centraletrain
- Take the train from Milano Centrale to Bresciatrain R4
- Take the bus from Brescia to Zagrebbus
13h 25m€42–66Bus
- Take the bus from Bellinzona to Zagrebbus
12h 38m€132–134Train, bus via Trieste
- Take the train from Locarno to Milano Centraletrain
- Take the train from Milano Centrale to Venezia Mestretrain Fr
- Take the train from Venezia Mestre to Trieste Centraletrain Re
- Take the bus from Trieste to Ljubljana bus stationbus 402 / ...
- Take the train from Ljubljana to Zagreb Glavni Kol.train 319 / ...
13h 23m€85–259Bus, night train
- Take the bus from Bellinzona, Stazione to Chur, Postautostationbus 171
- Take the night train from Sargans to Zagreb Glavni Kol.nighttrain En
17h 53m€255–451Train, train to Milano Malpensa Airport, fly to Zagreb Franjo Tuđman Airport
- Take the train from Locarno to Mendrisiotrain
- Take the train from Mendrisio to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Zagreb Franjo Tuđman Airport (ZAG)plane MXP - ZAG
6h 33m€82–256Train, bus to Il Caravaggio International Airport, fly to Zagreb Franjo Tuđman Airport
- Take the train from Locarno to Milano Centraletrain
- Take the bus from Piazza Luigi di Savoia to Bergamo Airport Bus Stationbus
- Fly from Il Caravaggio International Airport (BGY) to Zagreb Franjo Tuđman Airport (ZAG)plane BGY - ZAG
7h 3m€77–295Train to Milan Linate Airport, fly to Trieste – Friuli Venezia Giulia Airport, shuttle
- Take the train from Locarno to Seregnotrain
- Fly from Milan Linate Airport (LIN) to Trieste – Friuli Venezia Giulia Airport (TRS)plane LIN - TRS
- Take a shuttle bus from Trieste Airport to Višnja Gora
- Take a shuttle bus from Višnja Gora to Zagreb
8h 57m€150–584Train to Basel, fly to Zagreb Franjo Tuđman Airport
- Take the train from Bellinzona to Basel SBBtrain
- Fly from Basel (BSL) to Zagreb Franjo Tuđman Airport (ZAG)plane BSL - ZAG
8h 30m€65–349Train to Zurich Airport, fly to Ljubljana, shuttle
- Take the train from Bellinzona to Zuerich Hbtrain
- Fly from Zurich Airport (ZRH) to Ljubljana (LJU)plane ZRH - LJU
- Take a shuttle bus from Zgornji Brnik, Letališče Jožeta Pučnika Ljubljana to Zagreb
9h 1m€164–586Train to Milan Linate Airport, fly to Vienna International Airport, shuttle
- Take the train from Locarno to Seregnotrain
- Fly from Milan Linate Airport (LIN) to Vienna International Airport (VIE)plane LIN - VIE
- Take a shuttle bus from Flughafen Wien to Maribor, Avtobusna Postaja
- Take a shuttle bus from Maribor, Avtobusna Postaja to Zagreb
11h 27mTrain
- Take the train from Locarno to Milano Centraletrain
- Take the train from Milano Centrale to Venezia Mestretrain Fr
- Take the train from Venezia Mestre to Villach Hbftrain Rjx
- Take the train from Villach Hbf to Zagreb Glavni Kol.train 319 / ...
14h 11m€116–286Drive 682.5 km
- Drive from Locarno to Zagrebcar 682.5 km
7h 30m€116–167
Locarno to Zagreb by bus
Questions & Answers
The cheapest way to get from Locarno to Zagreb is to train and bus which costs €40 - €70 and takes 13h 25m.
The fastest way to get from Locarno to Zagreb is to train and fly which takes 6h 33m and costs €80 - €260.
No, there is no direct bus from Locarno to Zagreb. However, there are services departing from Locarno, Debarcadero and arriving at Zagreb via Bellinzona. The journey, including transfers, takes approximately 12h 38m.
No, there is no direct train from Locarno to Zagreb. However, there are services departing from Locarno and arriving at Zagreb Glavni Kol. via Milano Centrale, Venezia Mestre and Villach Hbf. The journey, including transfers, takes approximately 14h 11m.
The distance between Locarno and Zagreb is 803 km. The road distance is 682.5 km.
The best way to get from Locarno to Zagreb without a car is to bus which takes 12h 38m and costs €131 - €135.
It takes approximately 7h 19m to get from Locarno to Zagreb, including transfers.
Locarno to Zagreb bus services, operated by Zelic Reisen, depart from Bellinzona station.
Locarno to Zagreb train services, operated by Swiss Federal Railways (SBB CFF FFS), depart from Locarno station.
The best way to get from Locarno to Zagreb is to bus which takes 12h 38m and costs €131 - €135. Alternatively, you can train, which costs €110 - €290 and takes 14h 11m.
What companies run services between Locarno, Switzerland and Zagreb, Croatia?
Zelic Reisen operates a bus from Bellinzona to Zagreb 4 times a week. Tickets cost €124 and the journey takes 10h 50m. Alternatively, you can take a train from Locarno to Zagreb Glavni Kol. via Milano Centrale, Venezia Mestre, and Villach Hbf in around 14h 11m.
- Website
- ita-airways.com
Flights from Milan Linate Airport to Trieste – Friuli Venezia Giulia Airport
- Ave. Duration
- 57 min
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €80–190
Flights from Milan Linate Airport to Vienna International Airport
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- €65–230
- Website
- austrian.com
Flights from Zurich Airport to Zagreb Franjo Tuđman Airport via Vienna International Airport
- Ave. Duration
- 3h
- When
- Monday, Friday, and Sunday
- Estimated price
- €60–260
Flights from Milan Linate Airport to Vienna International Airport
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- €65–230
- Website
- swiss.com
Flights from Zurich Airport to Zagreb Franjo Tuđman Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- €90–230
Flights from Zurich Airport to Ljubljana
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- €85–310
- Website
- lufthansa.com
Flights from Zurich Airport to Zagreb Franjo Tuđman Airport via Munich
- Ave. Duration
- 3h 15m
- When
- Every day
- Estimated price
- €90–230
Flights from Basel to Zagreb Franjo Tuđman Airport via Frankfurt
- Ave. Duration
- 3h 15m
- When
- Monday, Wednesday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- €100–310
Flights from Milan Linate Airport to Vienna International Airport via Munich
- Ave. Duration
- 3h 2m
- When
- Every day
- Estimated price
- €100–270
- Website
- croatiaairlines.com
Flights from Zurich Airport to Zagreb Franjo Tuđman Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- €90–230
Flights from Milano Malpensa Airport to Zagreb Franjo Tuđman Airport
- Ave. Duration
- 1h 15m
- When
- Monday, Wednesday, and Friday
- Estimated price
- €60–190
- Website
- ryanair.com
Flights from Il Caravaggio International Airport to Zagreb Franjo Tuđman Airport
- Ave. Duration
- 1h 15m
- When
- Monday, Thursday, Friday, and Sunday
- Estimated price
- €29–170
Flights from Basel to Zagreb Franjo Tuđman Airport
- Ave. Duration
- 1h 30m
- When
- Monday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- €28–180
- Website
- easyjet.com
Flights from Milan Linate Airport to Vienna International Airport
- Ave. Duration
- 1h 25m
- When
- Every day
- Estimated price
- €30–140
- Phone
- +39 06 68475475
- ufficiogruppi@trenitalia.it
- Website
- trenitalia.com
Train from Bellinzona to Zuerich Hb
- Ave. Duration
- 1h 40m
- Frequency
- Hourly
- Estimated price
- €35–85
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- €55–85
- 2nd Class
- €35–55
Train from Milano Centrale to Venezia Mestre
- Ave. Duration
- 2h 25m
- Frequency
- Once daily
- Estimated price
- €55–110
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- €75–110
- 2nd Class
- €55–80
Train from Bellinzona to Basel SBB
- Ave. Duration
- 2h 38m
- Frequency
- Twice daily
- Estimated price
- €35–60
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- €35–50
- 2nd Class
- €40–60
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Locarno to Milano Centrale
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- €40–80
- Website
- https://www.sbb.ch/en
Night train from Sargans to Zagreb Glavni Kol.
- Ave. Duration
- 12h 54m
- Frequency
- Once daily
- Estimated price
- €230–410
- Website
- https://www.sbb.ch/en
Train from Locarno to Mendrisio
- Ave. Duration
- 56 min
- Frequency
- Hourly
- Estimated price
- €21–25
- Website
- https://www.sbb.ch/en
Train from Mendrisio to Malpensa Aeroporto T1
- Ave. Duration
- 1h 8m
- Frequency
- Hourly
- Estimated price
- €26–50
- Website
- https://www.sbb.ch/en
Train from Locarno to Seregno
- Ave. Duration
- 1h 36m
- Frequency
- Hourly
- Estimated price
- €35–65
- Website
- https://www.sbb.ch/en
Train from Bellinzona to Basel SBB
- Ave. Duration
- 2h 38m
- Frequency
- Every 3 hours
- Estimated price
- €55–100
- Website
- https://www.sbb.ch/en
- Phone
- +39 06 68475475
- Website
- trenitalia.com
Train from Milano Centrale to Venezia Mestre
- Ave. Duration
- 2h 15m
- Frequency
- Hourly
- Estimated price
- €19–55
- Schedules at
- trenitalia.com
Train from Venezia Mestre to Trieste Centrale
- Ave. Duration
- 1h 35m
- Frequency
- 5 times a day
- Estimated price
- €15–29
- Schedules at
- trenitalia.com
- Phone
- +39 06 8937 1892
- Website
- italotreno.it
Train from Milano Centrale to Venezia Mestre
- Ave. Duration
- 2h 19m
- Frequency
- Every 4 hours
- Estimated price
- €23–55
- Website
- https://www.italotreno.it/en
Train from Venezia Mestre to Trieste Centrale
- Ave. Duration
- 2h 1m
- Frequency
- Once daily
- Estimated price
- €12–26
- Website
- https://www.italotreno.it/en
- Phone
- +39.06.5210550
- Website
- trenitalia.com
Train from Venezia Mestre to Trieste Centrale
- Ave. Duration
- 2h 50m
- Frequency
- Hourly
- Estimated price
- €14–22
- Website
- https://www.trenitalia.com/en.html
- Phone
- +39 06 68475475
- Website
- trenitalia.com
Train from Venezia Mestre to Trieste Centrale
- Ave. Duration
- 1h 57m
- Frequency
- Twice daily
- Estimated price
- €9–26
- Website
- https://www.trenitalia.com/en.html
Train from Ljubljana to Zagreb Glavni Kol.
- Ave. Duration
- 2h 15m
- Frequency
- Twice daily
- Estimated price
- €25
- Website
- https://www.oebb.at/en/
Train from Villach Hbf to Zagreb Glavni Kol.
- Ave. Duration
- 4h 22m
- Frequency
- Once daily
- Estimated price
- €19–45
- Website
- https://www.oebb.at/en/
- Phone
- +386 1 29 13 331
- potnik.info@slo-zeleznice.si
- Website
- potniski.sz.si
Train from Ljubljana to Zagreb Glavni Kol.
- Ave. Duration
- 2h 34m
- Frequency
- Twice daily
- Estimated price
- €9–22
- Website
- https://potniski.sz.si/en/
- Intercity 2nd Class Ticket
- €9–14
- Regional Train Ticket
- €12–15
- Intercity 1st Class Ticket
- €19–22
- Phone
- +385 60 333 444
- informacije@hzpp.hr
- Website
- hzpp.hr
Train from Ljubljana to Zagreb Glavni Kol.
- Ave. Duration
- 2h 18m
- Frequency
- Once a week
- Estimated price
- €8–11
- Website
- http://www.hzpp.hr/en
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Locarno to Mendrisio
- Ave. Duration
- 56 min
- Frequency
- Hourly
- Estimated price
- €4–6
- Website
- https://www.trenord.it/en/
Train from Mendrisio to Malpensa Aeroporto T1
- Ave. Duration
- 1h 8m
- Frequency
- Hourly
- Estimated price
- €5–7
- Website
- https://www.trenord.it/en/
Train from Locarno to Seregno
- Ave. Duration
- 1h 36m
- Frequency
- Hourly
- Estimated price
- €6–9
- Website
- https://www.trenord.it/en/
Train from Locarno to Milano Centrale
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- €8–10
- Website
- https://www.trenord.it/en/
Train from Milano Centrale to Brescia
- Ave. Duration
- 1h 6m
- Frequency
- Hourly
- Estimated price
- €4–6
- Website
- https://www.trenord.it/en/
- Phone
- +41 58 580 70 70
- info@sob.ch
- Website
- sob.ch
Train from Bellinzona to Basel SBB
- Ave. Duration
- 3h 56m
- Frequency
- Every 4 hours
- Schedules at
- sob.ch
- Phone
- +49 (0) 7531 915109
- info@sbb-deutschland.de
- Website
- sbb-deutschland.de
Train from Bellinzona to Basel SBB
- Ave. Duration
- 2h 39m
- Frequency
- Once daily
- Estimated price
- €15–20
- Schedules at
- sbb-deutschland.de
Train from Venezia Mestre to Villach Hbf
- Ave. Duration
- 3h 11m
- Frequency
- Twice daily
- Estimated price
- €35–55
- Website
- https://www.oebb.at/en/reiseplanung-services/im-zug/unsere-zuege/railjet
- *
- €35–55
- Phone
- +41 79 445 39 68
- info@zelicreisen.ch
- Website
- zelicreisen.ch
Bus from Bellinzona to Zagreb
- Ave. Duration
- 10h 50m
- Frequency
- 4 times a week
- Estimated price
- €124
- Schedules at
- zelicreisen.ch
Rome2Rio's guide to FlixBus
Contact Details
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Trieste to Ljubljana bus station
- Ave. Duration
- 1h 24m
- Frequency
- Every 2 hours
- Estimated price
- €15–19
- Website
- https://www.flixbus.co.uk
Bus from Brescia to Zagreb
- Ave. Duration
- 8h 50m
- Frequency
- Once daily
- Estimated price
- €30–50
- Website
- https://www.flixbus.co.uk
- Phone
- +39 06 88 93 82 32
- Website
- itabus.it
Bus from Trieste to Ljubljana bus station
- Ave. Duration
- 1h 30m
- Frequency
- Once daily
- Estimated price
- €6–9
- Website
- https://www.itabus.it/en/home
- Phone
- +41 (0)848 818 818
- info@postauto.ch
- Website
- postauto.ch
Bus from Bellinzona, Stazione to Chur, Postautostation
- Ave. Duration
- 2h 12m
- Frequency
- Hourly
- Estimated price
- €10–15
- Website
- https://www.postauto.ch
- info@flibco.com
- Website
- flibco.com
Bus from Piazza Luigi di Savoia to Bergamo Airport Bus Station
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- €8–10
- Website
- https://www.flibco.com/en
- Phone
- +39 02 3008 9000
- mail@autostradale.it
- Website
- autostradale.it
Bus from Piazza Luigi di Savoia to Bergamo Airport Bus Station
- Ave. Duration
- 1h
- Frequency
- Every 30 minutes
- Estimated price
- €4–17
- Website
- https://autostradale.it/?lang=en-GB
- Standard Rate
- €13–17
- Phone
- +386 1 320 4530
- info@goopti.com
- Website
- goopti.com
Shuttle from Trieste Airport to Višnja Gora
- Ave. Duration
- 1h 45m
- Frequency
- On demand
- Estimated price
- €30–220
- Website
- https://www.goopti.com/en/
- Shared
- €30–40
- Private
- €110–220
Shuttle from Višnja Gora to Zagreb
- Ave. Duration
- 1h 35m
- Frequency
- On demand
- Estimated price
- €29–170
- Website
- https://www.goopti.com/en/
- Shared
- €29–34
- Private
- €90–170
Shuttle from Zgornji Brnik, Letališče Jožeta Pučnika Ljubljana to Zagreb
- Ave. Duration
- 2h 6m
- Frequency
- On demand
- Estimated price
- €32–240
- Website
- https://www.goopti.com/en/
- Shared
- €32–37
- Private
- €130–240
Shuttle from Maribor, Avtobusna Postaja to Zagreb
- Ave. Duration
- 1h 34m
- Frequency
- On demand
- Estimated price
- €31–180
- Website
- https://www.goopti.com/en/
- Shared
- €31–34
- Private
- €95–180
- Phone
- +386 070740450
- info@easydrive.si
Shuttle from Flughafen Wien to Maribor, Avtobusna Postaja
- Ave. Duration
- 2h 46m
- Frequency
- On demand
- Schedules at
- easydrive.si
Want to know more about travelling around Croatia
Rome2Rio's Travel Guide series provide vital information for the global traveller. Filled with useful and timely travel information, the guides answer all the hard questions - such as 'How do I buy a ticket?', 'Should I book online before I travel? ', 'How much should I expect to pay?', 'Do the trains and buses have Wifi?' - to help you get the most out of your next trip.
Related travel guides
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide
Italy Travel Guides
Read the travel guide
Want to know more about Flixbus?
Read the travel guide
More Questions & Answers
Locarno to Zagreb bus services, operated by Zelic Reisen, arrive at Zagreb station.
Locarno to Zagreb train services, operated by Swiss Federal Railways (SBB CFF FFS), arrive at Milano Centrale station.
Yes, the driving distance between Locarno to Zagreb is 683 km. It takes approximately 7h 30m to drive from Locarno to Zagreb.
There are 3014+ hotels available in Zagreb.





































































































