There are 12 ways to get from Zagreb to Locarno by bus, 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.
Bus, train via Venice
best- Take the bus from Zagreb, Autobusni Kolodvor to Novo Mesto, Avtobusna postajabus
- Take the bus from Novo Mesto, Avtobusna postaja to Stazione Mestrebus
- Take the train from Venezia Mestre to Milano Centraletrain
- Take the train from Milano Centrale to Locarnotrain
11h 10mCHF 388–1,147Fly Zagreb Franjo Tuđman Airport to Il Caravaggio International Airport, bus, train
cheapest- Fly from Zagreb Franjo Tuđman Airport (ZAG) to Il Caravaggio International Airport (BGY)plane ZAG - BGY
- Take the bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoiabus
- Take the train from Milano Centrale to Locarnotrain
7h 30mCHF 39–185Train
- Take the train from Zagreb Glavni Kol. to Ljubljanatrain 318 / ...
- Take the train from Ljubljana to Villach Hbftrain 38 / ...
- Take the train from Villach Hbf to Venezia Mestretrain Rjx
- Take the train from Venezia Mestre to Milano Centraletrain
- Take the train from Milano Centrale to Locarnotrain
14h 38mCHF 116–190Drive 682.6 km
- Drive from Zagreb to Locarnocar 682.6 km
7h 32mCHF 112–161Fly Zagreb Franjo Tuđman Airport to Milano Malpensa Airport, train
- Fly from Zagreb Franjo Tuđman Airport (ZAG) to Milano Malpensa Airport (MXP)plane ZAG - MXP
- Take the train from Malpensa Aeroporto T1 to Mendrisiotrain
- Take the train from Mendrisio to Locarnotrain
8h 34mCHF 58–272Bus
- Take the bus from Zagreb to Bellinzonabus
11h 27mCHF 124–127Bus, train
- Take the bus from Zagreb to Bresciabus
- Take the train from Brescia to Milano Centraletrain Re6
- Take the train from Milano Centrale to Locarnotrain
12h 47mCHF 53–84Bus, train #2
- Take the bus from Zagreb, Autobusni Kolodvor to Novo Mesto, Avtobusna postajabus
- Take the bus from Novo Mesto, Avtobusna postaja to Trieste Centralebus
- Take the train from Trieste Centrale to Milano Centraletrain Fr
- Take the train from Milano Centrale to Locarnotrain
15h 27mCHF 291–917Fly Zagreb Franjo Tuđman Airport to Zurich Airport, train
- Fly from Zagreb Franjo Tuđman Airport (ZAG) to Zurich Airport (ZRH)plane ZAG - ZRH
- Take the train from Zürich HB to Bellinzonatrain
6h 57mCHF 128–281Fly Zagreb Franjo Tuđman Airport to Milan Linate Airport, train
- Fly from Zagreb Franjo Tuđman Airport (ZAG) to Milan Linate Airport (LIN)plane ZAG - LIN
- Take the train from Monza to Locarnotrain
9h 53mCHF 98–224Shuttle to Ljubljana, fly to Zurich Airport, train
- Take a shuttle bus from Zagreb to Zgornji Brnik, Letališče Jožeta Pučnika Ljubljana
- Fly from Ljubljana (LJU) to Zurich Airport (ZRH)plane LJU - ZRH
- Take the train from Zürich HB to Bellinzonatrain
8h 14mCHF 169–804Fly Zagreb Franjo Tuđman Airport to Basel, train
- Fly from Zagreb Franjo Tuđman Airport (ZAG) to Basel (BSL)plane ZAG - BSL
- Take the train from Basel SBB to Bellinzonatrain
8h 26mCHF 60–455
Zagreb to Locarno by bus
Questions & Answers
The cheapest way to get from Zagreb to Locarno is to bus and train which costs SFr 50 - SFr 85 and takes 12h 47m.
The fastest way to get from Zagreb to Locarno is to fly and train which takes 6h 57m and costs SFr 120 - SFr 290.
No, there is no direct bus from Zagreb to Locarno. However, there are services departing from Zagreb and arriving at Locarno, Debarcadero via Bellinzona, Stazione. The journey, including transfers, takes approximately 11h 27m.
No, there is no direct train from Zagreb to Locarno. However, there are services departing from Zagreb Glavni Kol. and arriving at Locarno via Ljubljana, Villach Hbf, Venezia Mestre and Milano Centrale. The journey, including transfers, takes approximately 14h 38m.
The distance between Zagreb and Locarno is 734 km. The road distance is 682.6 km.
The best way to get from Zagreb to Locarno without a car is to bus and train via Venice which takes 11h 10m and costs SFr 380 - SFr 1200.
It takes approximately 11h 10m to get from Zagreb to Locarno, including transfers.
Zagreb to Locarno bus services, operated by Zelic Reisen, depart from Zagreb station.
Zagreb to Locarno train services, operated by HŽ Putnički prijevoz (HŽPP), depart from Zagreb Glavni Kol. station.
The best way to get from Zagreb to Locarno is to train which takes 14h 38m and costs SFr 110 - SFr 190. Alternatively, you can bus, which costs SFr 123 - SFr 127 and takes 11h 27m.
What companies run services between Zagreb, Croatia and Locarno, Switzerland?
You can take a train from Zagreb Glavni Kol. to Locarno via Ljubljana, Villach Hbf, Venezia Mestre, and Milano Centrale in around 14h 38m. Alternatively, Zelic Reisen operates a bus from Zagreb to Bellinzona 4 times a week. Tickets cost CHF 118 and the journey takes 10h 25m.
- Website
- lufthansa.com
Flights from Zagreb Franjo Tuđman Airport to Milano Malpensa Airport via Munich
- Ave. Duration
- 4h 16m
- When
- Every day
- Estimated price
- CHF 55–250
Flights from Zagreb Franjo Tuđman Airport to Zurich Airport via Frankfurt
- Ave. Duration
- 3h 45m
- When
- Every day
- Estimated price
- CHF 80–600
Flights from Zagreb Franjo Tuđman Airport to Zurich Airport via Munich
- Ave. Duration
- 3h 52m
- When
- Every day
- Estimated price
- CHF 75–600
Flights from Zagreb Franjo Tuđman Airport to Milan Linate Airport via Frankfurt
- Ave. Duration
- 4h 50m
- When
- Every day
- Estimated price
- CHF 80–320
Flights from Zagreb Franjo Tuđman Airport to Milan Linate Airport via Munich
- Ave. Duration
- 5h 35m
- When
- Every day
- Estimated price
- CHF 80–310
Flights from Ljubljana to Zurich Airport via Munich
- Ave. Duration
- 2h 50m
- When
- Every day
- Estimated price
- CHF 95–370
Flights from Zagreb Franjo Tuđman Airport to Basel via Munich
- Ave. Duration
- 2h 55m
- When
- Sunday
- Estimated price
- CHF 110–200
- Website
- swiss.com
Flights from Zagreb Franjo Tuđman Airport to Milano Malpensa Airport via Zurich Airport
- Ave. Duration
- 5h 12m
- When
- Every day
- Estimated price
- CHF 55–190
Flights from Zagreb Franjo Tuđman Airport to Zurich Airport
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- CHF 80–600
Flights from Ljubljana to Zurich Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- CHF 110–320
- Website
- ryanair.com
Flights from Zagreb Franjo Tuđman Airport to Milano Malpensa Airport via Zadar
- Ave. Duration
- 4h 35m
- When
- Tuesday and Wednesday
- Estimated price
- CHF 45–140
Flights from Zagreb Franjo Tuđman Airport to Il Caravaggio International Airport
- Ave. Duration
- 1h 15m
- When
- Sunday, Wednesday, Friday, Saturday, and Tuesday
- Estimated price
- CHF 27–140
Flights from Zagreb Franjo Tuđman Airport to Basel
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- CHF 29–170
- Website
- austrian.com
Flights from Zagreb Franjo Tuđman Airport to Zurich Airport via Vienna
- Ave. Duration
- 3h 35m
- When
- Monday to Friday
- Estimated price
- CHF 70–280
Flights from Zagreb Franjo Tuđman Airport to Milan Linate Airport via Vienna
- Ave. Duration
- 5h 56m
- When
- Every day
- Estimated price
- CHF 75–290
- Website
- croatiaairlines.com
Flights from Zagreb Franjo Tuđman Airport to Zurich Airport
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- CHF 80–600
- Website
- eurowings.com
Flights from Zagreb Franjo Tuđman Airport to Milan Linate Airport via Stuttgart
- Ave. Duration
- 9h 5m
- When
- Sunday
- Estimated price
- CHF 65–230
- Phone
- +39 06 8937 1892
- Website
- italotreno.it
Train from Venezia Mestre to Milano Centrale
- Ave. Duration
- 2h 16m
- Frequency
- Hourly
- Estimated price
- CHF 30–60
- Website
- https://www.italotreno.it/en
Train from Venezia Mestre to Milano Centrale
- Ave. Duration
- 2h 16m
- Frequency
- Hourly
- Estimated price
- CHF 30–60
- Website
- https://www.italotreno.it/en
- Phone
- +39 02 7249 4494
- [email protected]
- Website
- trenord.it
Train from Milano Centrale to Locarno
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- CHF 7–10
- Website
- https://www.trenord.it/en/
Train from Milano Centrale to Locarno
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- CHF 7–10
- Website
- https://www.trenord.it/en/
Train from Malpensa Aeroporto T1 to Mendrisio
- Ave. Duration
- 1h 8m
- Frequency
- Hourly
- Estimated price
- CHF 4–6
- Website
- https://www.trenord.it/en/
Train from Mendrisio to Locarno
- Ave. Duration
- 57 min
- Frequency
- Hourly
- Estimated price
- CHF 4–6
- Website
- https://www.trenord.it/en/
Train from Brescia to Milano Centrale
- Ave. Duration
- 1h 7m
- Frequency
- Hourly
- Estimated price
- CHF 6–8
- Website
- https://www.trenord.it/en/
Train from Milano Centrale to Locarno
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- CHF 6–8
- Website
- https://www.trenord.it/en/
Train from Monza to Locarno
- Ave. Duration
- 1h 45m
- Frequency
- Hourly
- Estimated price
- CHF 5–7
- Website
- https://www.trenord.it/en/
Train from Milano Centrale to Locarno
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- CHF 7–10
- Website
- https://www.trenord.it/en/
- Phone
- +385 60 333 444
- [email protected]
- Website
- hzpp.hr
Train from Zagreb Glavni Kol. to Ljubljana
- Ave. Duration
- 2h 26m
- Frequency
- Every 2 hours
- Estimated price
- CHF 25–40
- Website
- http://www.hzpp.hr/en
Train from Ljubljana to Villach Hbf
- Ave. Duration
- 1h 40m
- Frequency
- 4 times a day
- Estimated price
- CHF 18–27
- Website
- http://www.hzpp.hr/en
- Phone
- +386 1 29 13 331
- [email protected]
- Website
- potniski.sz.si
Train from Ljubljana to Villach Hbf
- Ave. Duration
- 1h 40m
- Frequency
- Every 2 hours
- Estimated price
- CHF 18–27
- Website
- https://potniski.sz.si/en/
- Phone
- +43 (0)5 1717
- Website
- oebb.at
Train from Villach Hbf to Venezia Mestre
- Ave. Duration
- 3h 11m
- Frequency
- 4 times a day
- Estimated price
- CHF 35–55
- Website
- https://www.oebb.at/en/reiseplanung-services/im-zug/unsere-zuege/railjet
- Website
- https://shop.oebbtickets.at/en/ticket
- *
- CHF 35–55
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Malpensa Aeroporto T1 to Mendrisio
- Ave. Duration
- 1h 8m
- Frequency
- Hourly
- Estimated price
- CHF 20–65
- Website
- https://www.sbb.ch/en
Train from Mendrisio to Locarno
- Ave. Duration
- 57 min
- Frequency
- Hourly
- Estimated price
- CHF 18–55
- Website
- https://www.sbb.ch/en
Train from Milano Centrale to Locarno
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- CHF 35–120
- Website
- https://www.sbb.ch/en
Train from Zürich HB to Bellinzona
- Ave. Duration
- 1h 39m
- Frequency
- Hourly
- Estimated price
- CHF 50–160
- Website
- https://www.sbb.ch/en
Train from Zürich HB to Bellinzona
- Ave. Duration
- 1h 39m
- Frequency
- Hourly
- Estimated price
- CHF 50–160
- Website
- https://www.sbb.ch/en
Train from Basel SBB to Bellinzona
- Ave. Duration
- 2h 38m
- Frequency
- Every 3 hours
- Estimated price
- CHF 75–240
- Website
- https://www.sbb.ch/en
- Phone
- +39 06 68475475
- Website
- trenitalia.com
Train from Trieste Centrale to Milano Centrale
- Ave. Duration
- 4h 8m
- Frequency
- Every 4 hours
- Estimated price
- CHF 55–110
- Schedules at
- trenitalia.com
- Phone
- +41 58 580 70 70
- Website
- sob.ch
Train from Zürich HB to Bellinzona
- Ave. Duration
- 2h 55m
- Frequency
- Every 3 hours
- Estimated price
- CHF 45–70
- Schedules at
- sob.ch
Train from Zürich HB to Bellinzona
- Ave. Duration
- 2h 55m
- Frequency
- Every 3 hours
- Estimated price
- CHF 45–70
- Schedules at
- sob.ch
Train from Basel SBB to Bellinzona
- Ave. Duration
- 3h 56m
- Frequency
- Every 4 hours
- Estimated price
- CHF 60–95
- Schedules at
- sob.ch
- Phone
- +49 (0) 7531 915109
- [email protected]
- Website
- sbb-deutschland.de
Train from Basel SBB to Bellinzona
- Ave. Duration
- 3h 5m
- Frequency
- Once daily
- Estimated price
- CHF 17–22
- Schedules at
- sbb-deutschland.de
- Phone
- +386 1 320 4530
- [email protected]
- Website
- goopti.com
Bus from Zagreb, Autobusni Kolodvor to Novo Mesto, Avtobusna postaja
- Ave. Duration
- 1h 19m
- Frequency
- On demand
- Estimated price
- CHF 21–230
- Website
- https://www.goopti.com/en/
- Shared
- CHF 21
- Private
- CHF 86
Bus from Novo Mesto, Avtobusna postaja to Stazione Mestre
- Ave. Duration
- 3h 45m
- Frequency
- On demand
- Estimated price
- CHF 330–850
- Website
- https://www.goopti.com/en/
Bus from Zagreb, Autobusni Kolodvor to Novo Mesto, Avtobusna postaja
- Ave. Duration
- 1h 19m
- Frequency
- On demand
- Estimated price
- CHF 21–230
- Website
- https://www.goopti.com/en/
- Shared
- CHF 21
- Private
- CHF 86
Bus from Novo Mesto, Avtobusna postaja to Trieste Centrale
- Ave. Duration
- 5h 53m
- Frequency
- On demand
- Estimated price
- CHF 180–460
- Website
- https://www.goopti.com/en/
Shuttle from Zagreb to Zgornji Brnik, Letališče Jožeta Pučnika Ljubljana
- Ave. Duration
- 2h 7m
- Frequency
- On demand
- Estimated price
- CHF 26–480
- Website
- https://www.goopti.com/en/
- Shared
- CHF 26–70
- Private
- CHF 130–170
- Phone
- +41 79 445 39 68
- [email protected]
- Website
- zelicreisen.ch
Bus from Zagreb to Bellinzona
- Ave. Duration
- 10h 25m
- Frequency
- 4 times a week
- Estimated price
- CHF 118
- Schedules at
- zelicreisen.ch
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- https://www.flixbus.fr
Bus from Zagreb to Brescia
- Ave. Duration
- 8h 30m
- Frequency
- Once daily
- Estimated price
- CHF 40–70
- Website
- https://www.flixbus.co.uk
- [email protected]
- Website
- terravision.eu
Bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoia
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 4–23
- Website
- https://www.terravision.eu/
Want to know more about travelling around Switzerland
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
Italian Lakes: Getting around by train
Read the travel guide
Italy Travel Guides
Read the travel guide
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide
More Questions & Answers
Zagreb to Locarno bus services, operated by Zelic Reisen, arrive at Bellinzona station.
Zagreb to Locarno train services, operated by HŽ Putnički prijevoz (HŽPP), arrive at Ljubljana station.
Yes, the driving distance between Zagreb to Locarno is 683 km. It takes approximately 7h 32m to drive from Zagreb to Locarno.
Book your Zagreb to Locarno train tickets online with Omio.
There are 3080+ hotels available in Locarno.


































































