There are 12 ways to get from Zagreb to Ascona by train, bus, night train, car, train (Trenitalia), 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
best- Take the train from Zagreb Glavni Kol. to LjubljanaEc / ...
- Take the bus from Ljubljana Hotel Union to Venezia, Viale Stazione
- Take the train from Venezia Mestre to Milano CentraleFr
- Take the train from Milano Centrale to Locarno
11h 38mCHF 66–151Bus, train
cheapest- Take the bus from Zagreb to Brescia
- Take the train from Brescia to Milano CentraleR4
- Take the train from Milano Centrale to Locarno
12h 52mCHF 33–85Bus
- Take the bus from Zagreb to Bellinzona
11h 49mCHF 123–128Night train, bus
- Take the night train from Zagreb Glavni Kol. to SargansEn
- Take the bus from Chur, Postautostation to Bellinzona, Stazione171
17h 12mCHF 152–219Drive 685 km
- Drive from Zagreb to Ascona685 km
7h 25mCHF 112–161Train
- Take the train from Zagreb Glavni Kol. to Villach HbfEc / ...
- Take the train from Villach Hbf to Venezia MestreRj / ...
- Take the train from Venezia Mestre to Milano CentraleFr
- Take the train from Milano Centrale to Locarno
13h 12mCHF 74–181Fly Zagreb Franjo Tuđman Airport to Milano Malpensa Airport, train
- Fly from Zagreb Franjo Tuđman Airport (ZAG) to Milano Malpensa Airport (MXP)ZAG - MXP
- Take the train from Malpensa Aeroporto T1 to Mendrisio
- Take the train from Mendrisio to Locarno
9h 4mCHF 75–235Fly Zagreb Franjo Tuđman Airport to Zurich Airport, train
- Fly from Zagreb Franjo Tuđman Airport (ZAG) to Zurich Airport (ZRH)ZAG - ZRH
- Take the train from Zürich HB to Bellinzona
7h 15mCHF 129–296Fly Zagreb Franjo Tuđman Airport to Milan Linate Airport, train
- Fly from Zagreb Franjo Tuđman Airport (ZAG) to Milan Linate Airport (LIN)ZAG - LIN
- Take the train from Monza to Locarno
9h 56mCHF 110–258Fly Zagreb Franjo Tuđman Airport to Il Caravaggio International Airport, train
- Fly from Zagreb Franjo Tuđman Airport (ZAG) to Il Caravaggio International Airport (BGY)ZAG - BGY
- Take the train from Milano Centrale to Locarno
7h 14mCHF 43–231Fly Zagreb Franjo Tuđman Airport to Basel, train
- Fly from Zagreb Franjo Tuđman Airport (ZAG) to Basel (BSL)ZAG - BSL
- Take the train from Basel SBB to Bellinzona
8h 50mCHF 76–333Shuttle, shuttle to Trieste – Friuli Venezia Giulia Airport, fly to Milan Linate Airport, train
- Take a shuttle bus from Zagreb to Višnja Gora
- Take a shuttle bus from Višnja Gora to Trieste Airport
- Fly from Trieste – Friuli Venezia Giulia Airport (TRS) to Milan Linate Airport (LIN)TRS - LIN
- Take the train from Monza to Locarno
9h 27mCHF 142–560
Zagreb to Ascona by train, foot, and bus
Questions & Answers
The cheapest way to get from Zagreb to Ascona is to bus and train which costs SFr 30 - SFr 90 and takes 12h 52m.
The fastest way to get from Zagreb to Ascona is to fly and train which takes 7h 14m and costs SFr 40 - SFr 240.
No, there is no direct bus from Zagreb to Ascona. However, there are services departing from Zagreb and arriving at Ascona, Centro via Bellinzona, Stazione and Locarno, Piazza Stazione. The journey, including transfers, takes approximately 11h 49m.
The distance between Zagreb and Ascona is 767 km. The road distance is 685 km.
The best way to get from Zagreb to Ascona without a car is to train and bus which takes 11h 38m and costs SFr 65 - SFr 160.
It takes approximately 11h 38m to get from Zagreb to Ascona, including transfers.
Zagreb to Ascona bus services, operated by Zelic Reisen, depart from Zagreb station.
The best way to get from Zagreb to Ascona is to bus which takes 11h 49m and costs SFr 120 - SFr 130. Alternatively, you can train, which costs SFr 70 - SFr 190 and takes 13h 12m.
Zagreb to Ascona bus services, operated by Zelic Reisen, arrive at Bellinzona station.
Yes, the driving distance between Zagreb to Ascona is 685 km. It takes approximately 7h 25m to drive from Zagreb to Ascona.
What companies run services between Zagreb, Croatia and Ascona, Switzerland?
Zelic Reisen operates a bus from Zagreb to Bellinzona 4 times a week. Tickets cost CHF 116 and the journey takes 10h 25m. Alternatively, you can take a train from Zagreb Glavni Kol. to Ascona, Scuole via Villach Hbf, Venezia Mestre, Milano Centrale, Locarno, and Locarno, Piazza Stazione in around 13h 12m.
Transport is disrupted due to the Russia-Ukraine war. Read more
- Website
- lufthansa.com
Flights from Zagreb Franjo Tuđman Airport to Milano Malpensa Airport via Munich
- Ave. Duration
- 5h 1m
- When
- Every day
- Estimated price
- CHF 65–250
Flights from Zagreb Franjo Tuđman Airport to Zurich Airport via Munich
- Ave. Duration
- 3h 5m
- When
- Every day
- Estimated price
- CHF 65–280
Flights from Zagreb Franjo Tuđman Airport to Zurich Airport via Frankfurt
- Ave. Duration
- 3h 57m
- When
- Every day
- Estimated price
- CHF 65–290
Flights from Zagreb Franjo Tuđman Airport to Milan Linate Airport via Frankfurt
- Ave. Duration
- 4h 36m
- When
- Every day
- Estimated price
- CHF 85–330
Flights from Zagreb Franjo Tuđman Airport to Milan Linate Airport via Munich
- Ave. Duration
- 3h 55m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- CHF 80–310
Flights from Zagreb Franjo Tuđman Airport to Basel via Munich
- Ave. Duration
- 3h 30m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- CHF 65–300
Flights from Zagreb Franjo Tuđman Airport to Basel via Frankfurt
- Ave. Duration
- 3h 55m
- When
- Every day
- Estimated price
- CHF 65–300
- Website
- ryanair.com
Flights from Zagreb Franjo Tuđman Airport to Milano Malpensa Airport via Vienna
- Ave. Duration
- 4h 16m
- When
- Monday, Tuesday, Wednesday, and Friday
- Estimated price
- CHF 65–160
Flights from Zagreb Franjo Tuđman Airport to Il Caravaggio International Airport
- Ave. Duration
- 1h 15m
- When
- Monday, Thursday, Friday, and Sunday
- Estimated price
- CHF 30–160
Flights from Zagreb Franjo Tuđman Airport to Basel
- Ave. Duration
- 1h 35m
- When
- Monday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- CHF 40–180
- Website
- austrian.com
Flights from Zagreb Franjo Tuđman Airport to Zurich Airport via Vienna
- Ave. Duration
- 3h 45m
- When
- Every day
- Estimated price
- CHF 85–180
Flights from Zagreb Franjo Tuđman Airport to Milan Linate Airport via Vienna
- Ave. Duration
- 5h 55m
- When
- Every day
- Estimated price
- CHF 70–300
Flights from Zagreb Franjo Tuđman Airport to Basel via Vienna
- Ave. Duration
- 4h 5m
- When
- Monday and Sunday
- Estimated price
- CHF 65–360
- Website
- swiss.com
Flights from Zagreb Franjo Tuđman Airport to Milano Malpensa Airport via Zurich Airport
- Ave. Duration
- 5h 7m
- When
- Every day
- Estimated price
- CHF 100–210
Flights from Zagreb Franjo Tuđman Airport to Zurich Airport
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- CHF 65–250
- Website
- croatiaairlines.com
Flights from Zagreb Franjo Tuđman Airport to Milano Malpensa Airport via Split
- Ave. Duration
- 6h 40m
- When
- Thursday
- Estimated price
- CHF 100–210
Flights from Zagreb Franjo Tuđman Airport to Zurich Airport
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- CHF 65–250
- Website
- eurowings.com
Flights from Zagreb Franjo Tuđman Airport to Milano Malpensa Airport via Stuttgart
- Ave. Duration
- 7h 15m
- When
- Sunday
- Estimated price
- CHF 55–190
Flights from Zagreb Franjo Tuđman Airport to Milan Linate Airport via Stuttgart
- Ave. Duration
- 8h 10m
- When
- Monday, Friday, and Sunday
- Estimated price
- CHF 65–240
- Website
- ita-airways.com
Flights from Trieste – Friuli Venezia Giulia Airport to Milan Linate Airport
- Ave. Duration
- 1h
- When
- Monday to Saturday
- Estimated price
- CHF 70–170
- Website
- neosair.it
Flights from Zagreb Franjo Tuđman Airport to Milano Malpensa Airport via Rome
- Ave. Duration
- 7h 5m
- When
- Monday
- Estimated price
- CHF 65–160
- Website
- easyjet.com
Flights from Zagreb Franjo Tuđman Airport to Milan Linate Airport via Berlin Brandenburg
- Ave. Duration
- 4h 10m
- When
- Tuesday
- Estimated price
- CHF 100–260
- Phone
- +385 60 333 444
- informacije@hzpp.hr
- Website
- hzpp.hr
Train from Zagreb Glavni Kol. to Ljubljana
- Ave. Duration
- 2h 19m
- Frequency
- 3 times a day
- Estimated price
- CHF 7–11
- Website
- http://www.hzpp.hr/en
Train from Zagreb Glavni Kol. to Villach Hbf
- Ave. Duration
- 4h 2m
- Frequency
- Twice daily
- Estimated price
- CHF 12–17
- Website
- http://www.hzpp.hr/en
- Phone
- +39 06 68475475
- Website
- trenitalia.com
Train from Venezia Mestre to Milano Centrale
- Ave. Duration
- 2h 15m
- Frequency
- Hourly
- Estimated price
- CHF 24–50
- Schedules at
- trenitalia.com
- Phone
- +39 06 68475475
- ufficiogruppi@trenitalia.it
- Website
- trenitalia.com
Train from Venezia Mestre to Milano Centrale
- Ave. Duration
- 2h 25m
- Frequency
- Twice daily
- Estimated price
- CHF 55–100
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- CHF 70–100
- 2nd Class
- CHF 55–75
- Phone
- +39 06 8937 1892
- Website
- italotreno.it
Train from Venezia Mestre to Milano Centrale
- Ave. Duration
- 2h 22m
- Frequency
- Every 4 hours
- Estimated price
- CHF 22–50
- Website
- https://www.italotreno.it/en
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Milano Centrale to Locarno
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- CHF 35–70
- Website
- https://www.sbb.ch/en
Train from Malpensa Aeroporto T1 to Mendrisio
- Ave. Duration
- 1h 8m
- Frequency
- Hourly
- Estimated price
- CHF 24–45
- Website
- https://www.sbb.ch/en
Train from Mendrisio to Locarno
- Ave. Duration
- 57 min
- Frequency
- Hourly
- Estimated price
- CHF 19–23
- Website
- https://www.sbb.ch/en
Train from Zürich HB to Bellinzona
- Ave. Duration
- 1h 37m
- Frequency
- Hourly
- Estimated price
- CHF 35–70
- Website
- https://www.sbb.ch/en
Train from Basel SBB to Bellinzona
- Ave. Duration
- 2h 39m
- Frequency
- Every 2 hours
- Estimated price
- CHF 50–90
- Website
- https://www.sbb.ch/en
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- 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 Brescia to Milano Centrale
- Ave. Duration
- 1h 10m
- Frequency
- Hourly
- Estimated price
- CHF 6–8
- 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 Monza to Locarno
- Ave. Duration
- 1h 45m
- Frequency
- Hourly
- Estimated price
- CHF 5–7
- Website
- https://www.trenord.it/en/
Night train from Zagreb Glavni Kol. to Sargans
- Ave. Duration
- 12h 43m
- Frequency
- Twice daily
- Estimated price
- CHF 120–180
- Website
- https://www.oebb.at/en/
Train from Villach Hbf to Venezia Mestre
- Ave. Duration
- 2h 52m
- Frequency
- 4 times a day
- Estimated price
- CHF 30–50
- Website
- https://www.oebb.at/en/reiseplanung-services/im-zug/unsere-zuege/railjet
- *
- CHF 30–50
- Phone
- +41 58 580 70 70
- info@sob.ch
- Website
- sob.ch
Train from Zürich HB to Bellinzona
- Ave. Duration
- 2h 55m
- Frequency
- Every 4 hours
- Schedules at
- sob.ch
Train from Basel SBB to Bellinzona
- Ave. Duration
- 3h 57m
- Frequency
- Every 4 hours
- Schedules at
- sob.ch
- Phone
- +49 (0) 7531 915109
- info@sbb-deutschland.de
- Website
- sbb-deutschland.de
Train from Basel SBB to Bellinzona
- Ave. Duration
- 3h 6m
- Frequency
- Once daily
- Estimated price
- CHF 17–21
- Schedules at
- sbb-deutschland.de
- Phone
- +386 (0)51 224 222
- info@drd.si
- Website
- drd.si
Bus from Ljubljana Hotel Union to Venezia, Viale Stazione
- Ave. Duration
- 2h 50m
- Frequency
- Once daily
- Estimated price
- CHF 27
- Website
- https://www.drd.si/
- Phone
- +41 79 445 39 68
- info@zelicreisen.ch
- Website
- zelicreisen.ch
Bus from Zagreb to Bellinzona
- Ave. Duration
- 10h 25m
- Frequency
- 4 times a week
- Estimated price
- CHF 116
- Schedules at
- zelicreisen.ch
- Phone
- +41 (0)848 818 818
- info@postauto.ch
- Website
- postauto.ch
Bus from Chur, Postautostation to Bellinzona, Stazione
- Ave. Duration
- 2h 12m
- Frequency
- Hourly
- Estimated price
- CHF 9–14
- Website
- https://www.postauto.ch
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Zagreb to Brescia
- Ave. Duration
- 8h 30m
- Frequency
- 5 times a week
- Estimated price
- CHF 30–65
- Website
- https://www.flixbus.co.uk
- Phone
- +39 06 88 93 82 32
- Website
- itabus.it
Bus from Zagreb to Brescia
- Ave. Duration
- 8h 40m
- Frequency
- 4 times a week
- Estimated price
- CHF 18–25
- Website
- https://www.itabus.it/en/home
- Phone
- +386 1 320 4530
- info@goopti.com
- Website
- goopti.com
Shuttle from Zagreb to Višnja Gora
- Ave. Duration
- 1h 36m
- Frequency
- On demand
- Estimated price
- CHF 27–160
- Schedules at
- goopti.com
- Shared
- CHF 27–31
- Private
- CHF 85–160
Shuttle from Višnja Gora to Trieste Airport
- Ave. Duration
- 1h 45m
- Frequency
- On demand
- Estimated price
- CHF 30–210
- Schedules at
- goopti.com
- Shared
- CHF 30–40
- Private
- CHF 110–210
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
There are 2705+ hotels available in Ascona.











































































