There are 13 ways to get from Locarno to Zagreb by train, bus, night train, car, plane, or shuttle
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train, bus via Novo Mesto
best- Take the train from Locarno to Milano Centraletrain
- Take the train from Milano Centrale to Venezia Mestretrain
- Take the bus from Stazione Mestre to Novo Mesto, Avtobusna postajabus
- Take the bus from Novo Mesto, Avtobusna postaja to Zagreb, Autobusni Kolodvorbus
10h 59m€453–1,338Train, train to Milano Malpensa Airport, fly to Zagreb Franjo Tuđman Airport
cheapest- 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
8h 43m€61–285Train
- Take the train from Locarno to Milano Centraletrain
- Take the train from Milano Centrale to Venezia Mestretrain
- Take the train from Venezia Mestre to Villach Hbftrain Rjx
- Take the train from Villach Hbf to Ljubljanatrain 19 / ...
- Take the train from Ljubljana to Zagreb Glavni Kol.train 319 / ...
14h 44m€153–338Bus, 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 49m€282–867Drive 682.5 km
- Drive from Locarno to Zagrebcar 682.5 km
7h 29m€119–172Train, bus
- Take the train from Locarno to Milano Centraletrain
- Take the train from Milano Centrale to Venezia Mestretrain Fr
- Take the bus from Venezia, Viale Stazione (Mestre Stazione - fermata ATVO) to Zagrebbus 402 / ...
11h 21m€105–283Bus
- Take the bus from Bellinzona to Zagrebbus
12h 38m€134–136Train to Zurich Airport, fly to Zagreb Franjo Tuđman Airport
- Take the train from Bellinzona to Zuerich Hbtrain
- Fly from Zurich Airport (ZRH) to Zagreb Franjo Tuđman Airport (ZAG)plane ZRH - ZAG
6h 57m€127–322Train to Milan Linate Airport, fly to Zagreb Franjo Tuđman Airport
- Take the train from Locarno to Monzatrain
- Fly from Milan Linate Airport (LIN) to Zagreb Franjo Tuđman Airport (ZAG)plane LIN - ZAG
8h 40m€105–235Train, 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 Milan Bergamo Orio al Serio Airportbus
- Fly from Il Caravaggio International Airport (BGY) to Zagreb Franjo Tuđman Airport (ZAG)plane BGY - ZAG
7h 4m€77–310Train 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 38m€65–510Train 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
8h 28m€174–920Train to Zurich Airport, fly to Graz Airport, shuttle
- Take the train from Bellinzona to Zuerich Hbtrain
- Fly from Zurich Airport (ZRH) to Graz Airport (GRZ)plane ZRH - GRZ
- Take a shuttle bus from Graz Airport to Zagreb
9h 11m€416–1,050
Locarno to Zagreb by train, bus, and night train
Questions & Answers
The cheapest way to get from Locarno to Zagreb is to train and fly which costs €60 - €290 and takes 8h 43m.
The fastest way to get from Locarno to Zagreb is to train and fly which takes 6h 57m and costs €120 - €330.
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, Villach Hbf and Ljubljana. The journey, including transfers, takes approximately 14h 44m.
The distance between Locarno and Zagreb is 733 km. The road distance is 682.5 km.
The best way to get from Locarno to Zagreb without a car is to train and bus via Novo Mesto which takes 10h 59m and costs €450 - €1400.
It takes approximately 10h 59m 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 train which takes 14h 44m and costs €150 - €340. Alternatively, you can bus, which costs €133 - €137 and takes 12h 38m.
What companies run services between Locarno, Switzerland and Zagreb, Croatia?
You can take a train from Locarno to Zagreb Glavni Kol. via Milano Centrale, Venezia Mestre, Villach Hbf, and Ljubljana in around 14h 44m. Alternatively, Zelic Reisen operates a bus from Bellinzona to Zagreb 4 times a week. Tickets cost €126 and the journey takes 10h 50m.
- Website
- lufthansa.com
Flights from Milano Malpensa Airport to Zagreb Franjo Tuđman Airport via Frankfurt
- Ave. Duration
- 5h 26m
- When
- Every day
- Estimated price
- €75–300
Flights from Milano Malpensa Airport to Zagreb Franjo Tuđman Airport via Munich
- Ave. Duration
- 4h 28m
- When
- Every day
- Estimated price
- €65–290
Flights from Zurich Airport to Zagreb Franjo Tuđman Airport via Munich
- Ave. Duration
- 3h 7m
- When
- Every day
- Estimated price
- €90–350
Flights from Milan Linate Airport to Zagreb Franjo Tuđman Airport via Munich
- Ave. Duration
- 4h 45m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €80–340
Flights from Milan Linate Airport to Zagreb Franjo Tuđman Airport via Frankfurt
- Ave. Duration
- 4h 30m
- When
- Every day
- Estimated price
- €90–360
Flights from Basel to Zagreb Franjo Tuđman Airport via Munich
- Ave. Duration
- 3h
- When
- Monday to Saturday
- Estimated price
- €110–220
Flights from Basel to Zagreb Franjo Tuđman Airport via Frankfurt
- Ave. Duration
- 3h 20m
- When
- Every day
- Estimated price
- €110–220
Flights from Zurich Airport to Graz Airport via Munich
- Ave. Duration
- 3h 2m
- When
- Every day
- Estimated price
- €130–490
- Website
- swiss.com
Flights from Milano Malpensa Airport to Zagreb Franjo Tuđman Airport via Zurich Airport
- Ave. Duration
- 6h 55m
- When
- Every day
- Estimated price
- €65–220
Flights from Zurich Airport to Zagreb Franjo Tuđman Airport
- Ave. Duration
- 1h 20m
- When
- Every day
- Estimated price
- €85–600
Flights from Zurich Airport to Ljubljana
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- €120–340
Flights from Zurich Airport to Graz Airport
- Ave. Duration
- 1h 10m
- When
- Monday to Friday
- Estimated price
- €110–300
Flights from Zurich Airport to Graz Airport via Vienna
- Ave. Duration
- 3h 10m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €120–460
- Website
- austrian.com
Flights from Zurich Airport to Zagreb Franjo Tuđman Airport via Vienna
- Ave. Duration
- 3h 10m
- When
- Every day
- Estimated price
- €85–330
Flights from Milan Linate Airport to Zagreb Franjo Tuđman Airport via Vienna
- Ave. Duration
- 4h 37m
- When
- Every day
- Estimated price
- €85–320
Flights from Zurich Airport to Graz Airport
- Ave. Duration
- 1h 10m
- When
- Monday to Friday
- Estimated price
- €110–300
Flights from Zurich Airport to Graz Airport via Vienna
- Ave. Duration
- 3h 10m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €120–460
- Website
- croatiaairlines.com
Flights from Milano Malpensa Airport to Zagreb Franjo Tuđman Airport via Split
- Ave. Duration
- 5h 25m
- When
- Thursday and Sunday
- Estimated price
- €70–240
Flights from Zurich Airport to Zagreb Franjo Tuđman Airport
- Ave. Duration
- 1h 20m
- When
- Every day
- Estimated price
- €85–600
Flights from Zurich Airport to Zagreb Franjo Tuđman Airport via Split
- Ave. Duration
- 3h 25m
- When
- Monday, Wednesday, and Friday
- Estimated price
- €85–600
- Website
- ryanair.com
Flights from Il Caravaggio International Airport to Zagreb Franjo Tuđman Airport
- Ave. Duration
- 1h 10m
- When
- Sunday, Wednesday, Friday, Saturday, and Tuesday
- Estimated price
- €29–150
Flights from Basel to Zagreb Franjo Tuđman Airport
- Ave. Duration
- 1h 45m
- When
- Every day
- Estimated price
- €30–180
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Locarno to Milano Centrale
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- €40–130
- Website
- https://www.sbb.ch/en
Train from Locarno to Milano Centrale
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- €40–130
- Website
- https://www.sbb.ch/en
Night train from Sargans to Zagreb Glavni Kol.
- Ave. Duration
- 12h 54m
- Frequency
- Twice daily
- Estimated price
- €260–800
- Website
- https://www.sbb.ch/en
Train from Locarno to Milano Centrale
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- €40–130
- Website
- https://www.sbb.ch/en
Train from Locarno to Mendrisio
- Ave. Duration
- 56 min
- Frequency
- Hourly
- Estimated price
- €19–60
- Website
- https://www.sbb.ch/en
Train from Mendrisio to Malpensa Aeroporto T1
- Ave. Duration
- 1h 8m
- Frequency
- Hourly
- Estimated price
- €21–65
- Website
- https://www.sbb.ch/en
Train from Locarno to Milano Centrale
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- €40–130
- Website
- https://www.sbb.ch/en
Train from Bellinzona to Basel SBB
- Ave. Duration
- 2h 38m
- Frequency
- Every 3 hours
- Estimated price
- €80–260
- Website
- https://www.sbb.ch/en
- Phone
- +39 06 8937 1892
- Website
- italotreno.it
Train from Milano Centrale to Venezia Mestre
- Ave. Duration
- 2h 16m
- Frequency
- Hourly
- Estimated price
- €30–65
- Website
- https://www.italotreno.it/en
Train from Milano Centrale to Venezia Mestre
- Ave. Duration
- 2h 16m
- Frequency
- Hourly
- Estimated price
- €30–65
- Website
- https://www.italotreno.it/en
- Phone
- +43 (0)5 1717
- Website
- oebb.at
Train from Venezia Mestre to Villach Hbf
- Ave. Duration
- 3h 11m
- Frequency
- 4 times a day
- Estimated price
- €35–55
- Website
- https://www.oebb.at/en/reiseplanung-services/im-zug/unsere-zuege/railjet
- Website
- https://shop.oebbtickets.at/en/ticket
- *
- €35–55
- Phone
- _AUSTRIAN_RAILWAYS_(ÖBB)
- Website
- oebb.at
Train from Villach Hbf to Ljubljana
- Ave. Duration
- 1h 31m
- Frequency
- Hourly
- Estimated price
- €20–40
- Website
- https://www.oebb.at/en/
Train from Ljubljana to Zagreb Glavni Kol.
- Ave. Duration
- 2h 15m
- Frequency
- 4 times a day
- Estimated price
- €29–55
- Website
- https://www.oebb.at/en/
- Phone
- +386 1 29 13 331
- [email protected]
- Website
- potniski.sz.si
Train from Ljubljana to Zagreb Glavni Kol.
- Ave. Duration
- 2h 34m
- Frequency
- 4 times a day
- Estimated price
- €27–45
- Website
- https://potniski.sz.si/en/
- Phone
- +385 60 333 444
- [email protected]
- Website
- hzpp.hr
Train from Ljubljana to Zagreb Glavni Kol.
- Ave. Duration
- 2h 18m
- Frequency
- Twice a week
- Estimated price
- €27–45
- Website
- http://www.hzpp.hr/en
- Phone
- +39 06 68475475
- Website
- trenitalia.com
Train from Milano Centrale to Venezia Mestre
- Ave. Duration
- 2h 15m
- Frequency
- Hourly
- Estimated price
- €35–75
- Schedules at
- trenitalia.com
- Phone
- +39 06 68475475
- [email protected]
- Website
- trenitalia.com
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 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 Bellinzona to Basel SBB
- Ave. Duration
- 2h 38m
- Frequency
- 4 times a day
- Estimated price
- €50–100
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- €70–100
- 2nd Class
- €50–70
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 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
- Phone
- +39 02 7249 4494
- [email protected]
- 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 Monza
- Ave. Duration
- 1h 44m
- Frequency
- Hourly
- Estimated price
- €7–10
- Website
- https://www.trenord.it/en/
- Phone
- +41 58 580 70 70
- Website
- sob.ch
Train from Bellinzona to Basel SBB
- Ave. Duration
- 3h 56m
- Frequency
- Every 4 hours
- Estimated price
- €65–100
- Schedules at
- sob.ch
- Phone
- +49 (0) 7531 915109
- [email protected]
- Website
- sbb-deutschland.de
Train from Bellinzona to Basel SBB
- Ave. Duration
- 2h 39m
- Frequency
- Once daily
- Estimated price
- €18–23
- Schedules at
- sbb-deutschland.de
- Phone
- +386 1 320 4530
- [email protected]
- Website
- goopti.com
Bus from Stazione Mestre to Novo Mesto, Avtobusna postaja
- Ave. Duration
- 3h 45m
- Frequency
- On demand
- Estimated price
- €360–900
- Website
- https://www.goopti.com/en/
Bus from Novo Mesto, Avtobusna postaja to Zagreb, Autobusni Kolodvor
- Ave. Duration
- 1h 18m
- Frequency
- On demand
- Estimated price
- €22–250
- Website
- https://www.goopti.com/en/
- Shared
- €22
- Private
- €92
Shuttle from Zgornji Brnik, Letališče Jožeta Pučnika Ljubljana to Zagreb
- Ave. Duration
- 2h 6m
- Frequency
- On demand
- Estimated price
- €28–550
- Website
- https://www.goopti.com/en/
- Shared
- €28–75
- Private
- €140–180
Shuttle from Graz Airport to Zagreb
- Ave. Duration
- 2h 49m
- Frequency
- On demand
- Estimated price
- €240–600
- Website
- https://www.goopti.com/en/
- Private
- €278
- Phone
- +41 (0)848 818 818
- [email protected]
- 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
Rome2Rio's guide to FlixBus
Contact DetailsContact Details
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- https://www.flixbus.fr
Bus from Venezia, Viale Stazione (Mestre Stazione - fermata ATVO) to Zagreb
- Ave. Duration
- 5h 50m
- Frequency
- 5 times a day
- Estimated price
- €29–50
- Website
- https://www.flixbus.co.uk
- Phone
- +41 79 445 39 68
- [email protected]
- Website
- zelicreisen.ch
Bus from Bellinzona to Zagreb
- Ave. Duration
- 10h 50m
- Frequency
- 4 times a week
- Estimated price
- €126
- Schedules at
- zelicreisen.ch
- [email protected]
- Website
- terravision.eu
Bus from Piazza Luigi di Savoia to Milan Bergamo Orio al Serio Airport
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- €5–25
- Website
- https://www.terravision.eu/
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
Italy Travel Guides
Read the travel guide
Heading to Europe? Read this before you buy a Eurail Pass
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 682 km. It takes approximately 7h 29m to drive from Locarno to Zagreb.
Book your Locarno to Zagreb train tickets online with Omio.
There are 3008+ hotels available in Zagreb.



















































































