There are 10 ways to get from Zagreb to Assago by train, bus, night train, car, train (Trenitalia), plane, subway, 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 bus station to Trieste977 / ...
- Take the train from Trieste Centrale to Milano P.GaribaldiFr
10h 3m€51–125Bus
cheapest- Take the bus from Zagreb to Milano, Autostazione Lampugnano402 / ...
12h€19–110Bus via Milan Bergamo Airport (BGY)
- Take the bus from Zagreb Central Bus Station to Bergamo Airport Bus StationItabus
- Take the bus from Bergamo Airport Bus Station to Piazza Luigi di Savoiaflibco
11h 5m€21–85Night train
- Take the night train from Zagreb Glavni Kol. to Villach HbfEn
- Take the night train from Villach Hbf to Milano P.GaribaldiNj
14h 21m€66–333Drive 611.7 km
- Drive from Zagreb to Assago611.7 km
6h 14m€96–138Train
- 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
11h 15m€74–186Fly Zagreb Franjo Tuđman Airport to Milan Linate Airport
- Fly from Zagreb Franjo Tuđman Airport (ZAG) to Milan Linate Airport (LIN)ZAG - LIN
6h 59m€115–268Fly Zagreb Franjo Tuđman Airport to Milano Malpensa Airport
- Fly from Zagreb Franjo Tuđman Airport (ZAG) to Milano Malpensa Airport (MXP)ZAG - MXP
7h 21m€82–240Fly Zagreb Franjo Tuđman Airport to Il Caravaggio International Airport, line 2 subway
- Fly from Zagreb Franjo Tuđman Airport (ZAG) to Il Caravaggio International Airport (BGY)ZAG - BGY
- Take the subway from Centrale Fs to Assago Milanofiori Forum
5h 14m€43–250Shuttle, shuttle to Trieste – Friuli Venezia Giulia Airport, fly to Milan Linate Airport
- 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
6h 30m€143–601
Zagreb to Assago by train, bus, and subway
Questions & Answers
The cheapest way to get from Zagreb to Assago is to bus which costs €19 - €110 and takes 12h.
The fastest way to get from Zagreb to Assago is to fly and line 2 subway which takes 5h 14m and costs €40 - €250.
No, there is no direct bus from Zagreb to Assago. However, there are services departing from Zagreb and arriving at Milan via Milano, Autostazione Lampugnano. The journey, including transfers, takes approximately 12h.
No, there is no direct train from Zagreb to Assago. However, there are services departing from Zagreb Glavni Kol. and arriving at Assago Milanofiori Forum via Villach Hbf and Garibaldi Fs. The journey, including transfers, takes approximately 14h 21m.
The distance between Zagreb and Assago is 647 km. The road distance is 611.7 km.
The best way to get from Zagreb to Assago without a car is to train and bus which takes 10h 3m and costs €50 - €130.
It takes approximately 10h 3m to get from Zagreb to Assago, including transfers.
Zagreb to Assago bus services, operated by FlixBus, depart from Zagreb station.
Zagreb to Assago train services, operated by ÖBB, depart from Zagreb Glavni Kol. station.
The best way to get from Zagreb to Assago is to bus via Milan Bergamo Airport (BGY) which takes 11h 5m and costs €21 - €85. Alternatively, you can train, which costs €70 - €190 and takes 11h 15m, you could also fly, which costs €110 - €270 and takes 6h 59m.
What companies run services between Zagreb, Croatia and Assago, Italy?
You can take a bus from Zagreb Central Bus Station to Assago Milanofiori Forum via Bergamo Airport Bus Station, Piazza Luigi di Savoia, and Centrale Fs in around 11h 5m. Alternatively, you can take a vehicle from Zagreb Glavni Kol. to Assago Milanofiori Forum via Villach Hbf, Milano P.Garibaldi, and Garibaldi Fs in around 14h 21m.
- Website
- lufthansa.com
Flights from Zagreb Franjo Tuđman Airport to Milan Linate Airport via Frankfurt
- Ave. Duration
- 4h 36m
- When
- Every day
- Estimated price
- €110–320
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
- €150–320
Flights from Zagreb Franjo Tuđman Airport to Milano Malpensa Airport via Munich
- Ave. Duration
- 5h 1m
- When
- Every day
- Estimated price
- €70–270
- 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
- €70–170
Flights from Zagreb Franjo Tuđman Airport to Il Caravaggio International Airport
- Ave. Duration
- 1h 15m
- When
- Monday, Thursday, Friday, and Sunday
- Estimated price
- €30–170
- Website
- austrian.com
Flights from Zagreb Franjo Tuđman Airport to Milan Linate Airport via Vienna
- Ave. Duration
- 5h 55m
- When
- Every day
- Estimated price
- €75–320
- Website
- eurowings.com
Flights from Zagreb Franjo Tuđman Airport to Milan Linate Airport via Stuttgart
- Ave. Duration
- 8h 10m
- When
- Monday, Friday, and Sunday
- Estimated price
- €70–260
Flights from Zagreb Franjo Tuđman Airport to Milano Malpensa Airport via Stuttgart
- Ave. Duration
- 7h 15m
- When
- Sunday
- Estimated price
- €55–210
- Website
- swiss.com
Flights from Zagreb Franjo Tuđman Airport to Milano Malpensa Airport via Zurich
- Ave. Duration
- 5h 7m
- When
- Every day
- Estimated price
- €100–230
- Website
- ita-airways.com
Flights from Trieste – Friuli Venezia Giulia Airport to Milan Linate Airport
- Ave. Duration
- 1h
- When
- Monday to Saturday
- Estimated price
- €80–200
- 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
- €110–270
- Website
- croatiaairlines.com
Flights from Zagreb Franjo Tuđman Airport to Milano Malpensa Airport via Split
- Ave. Duration
- 6h 40m
- When
- Thursday
- Estimated price
- €100–230
- Website
- neosair.it
Flights from Zagreb Franjo Tuđman Airport to Milano Malpensa Airport via Rome
- Ave. Duration
- 7h 5m
- When
- Monday
- Estimated price
- €70–170
- 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
- €8–11
- Website
- http://www.hzpp.hr/en
Night train from Zagreb Glavni Kol. to Villach Hbf
- Ave. Duration
- 4h 10m
- Frequency
- Once daily
- Estimated price
- €13–19
- Website
- http://www.hzpp.hr/en
Train from Zagreb Glavni Kol. to Villach Hbf
- Ave. Duration
- 4h 2m
- Frequency
- Twice daily
- Estimated price
- €13–19
- Website
- http://www.hzpp.hr/en
- Phone
- +39 06 68475475
- Website
- trenitalia.com
Train from Trieste Centrale to Milano P.Garibaldi
- Ave. Duration
- 3h 55m
- Frequency
- Once daily
- Estimated price
- €35–85
- Schedules at
- trenitalia.com
Train from Venezia Mestre to Milano Centrale
- Ave. Duration
- 2h 15m
- Frequency
- Hourly
- Estimated price
- €25–55
- Schedules at
- trenitalia.com
Night train from Zagreb Glavni Kol. to Villach Hbf
- Ave. Duration
- 4h 8m
- Frequency
- 3 times a day
- Estimated price
- €40–60
- Website
- https://www.oebb.at/en/
- Phone
- +43 51717
- Website
- nightjet.com
Night train from Villach Hbf to Milano P.Garibaldi
- Ave. Duration
- 8h 46m
- Frequency
- Twice daily
- Estimated price
- €50–265
- Website
- https://www.nightjet.com/en/#/home
- Sleeper Carriage
- €260–265
- Couchette Carriage
- €140–170
- Seating Carriage
- €50–65
Train from Villach Hbf to Venezia Mestre
- Ave. Duration
- 2h 52m
- Frequency
- 4 times a day
- Estimated price
- €35–55
- Website
- https://www.oebb.at/en/reiseplanung-services/im-zug/unsere-zuege/railjet
- 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
- €23–50
- Website
- https://www.italotreno.it/en
- 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
- €55–110
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- €75–110
- 2nd Class
- €55–80
- Phone
- 02.48.607.607
- Website
- atm.it
Subway from Centrale Fs to Assago Milanofiori Forum
- Ave. Duration
- 24 min
- Frequency
- Every 15 minutes
- Estimated price
- €2–3
- Schedules at
- atm.it
Rome2Rio's guide to FlixBus
Contact Details
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Ljubljana bus station to Trieste
- Ave. Duration
- 1h 25m
- Frequency
- Every 3 hours
- Estimated price
- €15–21
- Website
- https://www.flixbus.co.uk
Bus from Zagreb to Milano, Autostazione Lampugnano
- Ave. Duration
- 10h 20m
- Frequency
- Twice daily
- Estimated price
- €25–80
- Website
- https://www.flixbus.co.uk
- Phone
- +39 06 88 93 82 32
- Website
- itabus.it
Bus from Ljubljana bus station to Trieste
- Ave. Duration
- 1h 30m
- Frequency
- 3 times a day
- Estimated price
- €6–10
- Website
- https://www.itabus.it/en/home
Bus from Zagreb Central Bus Station to Bergamo Airport Bus Station
- Ave. Duration
- 9h 30m
- Frequency
- 4 times a week
- Estimated price
- €15–65
- Website
- https://www.itabus.it/en/home
Bus from Zagreb to Milano, Autostazione Lampugnano
- Ave. Duration
- 10h 20m
- Frequency
- 4 times a week
- Estimated price
- €15–65
- Website
- https://www.itabus.it/en/home
- Phone
- +3-389-268-0068
- Website
- blablacar.co.uk
Bus from Ljubljana bus station to Trieste
- Ave. Duration
- 1h 25m
- Frequency
- 4 times a week
- Estimated price
- €15–26
- Website
- https://www.blablacar.co.uk/bus
Bus from Zagreb to Milano, Autostazione Lampugnano
- Ave. Duration
- 10h
- Frequency
- 4 times a week
- Estimated price
- €23–110
- Website
- https://www.blablacar.co.uk/bus
- info@flibco.com
- Website
- flibco.com
Bus from Bergamo Airport Bus Station to Piazza Luigi di Savoia
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- €10
- Website
- https://www.flibco.com/en
- Phone
- +39 02 3008 9000
- mail@autostradale.it
- Website
- autostradale.it
Bus from Bergamo Airport Bus Station to Piazza Luigi di Savoia
- Ave. Duration
- 1h
- Frequency
- Every 30 minutes
- Estimated price
- €4–17
- Website
- https://autostradale.it/?lang=en-GB
- Standard Rate
- €13–17
- Phone
- 07001 8282
- booking@union-ivkoni.com
- Website
- union-ivkoni.com
Bus from Zagreb to Milano, Autostazione Lampugnano
- Ave. Duration
- 9h
- Frequency
- 3 times a week
- Estimated price
- €26–40
- Website
- https://union-ivkoni.com/en
- 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
- €29–170
- Schedules at
- goopti.com
- Shared
- €29–33
- Private
- €90–170
Shuttle from Višnja Gora to Trieste Airport
- Ave. Duration
- 1h 45m
- Frequency
- On demand
- Estimated price
- €30–220
- Schedules at
- goopti.com
- Shared
- €30–40
- Private
- €120–220
Want to know more about travelling around Italy
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
Want to know more about Flixbus?
Read the travel guide
Getting to Milan from the airport
Read the travel guide
More Questions & Answers
Zagreb to Assago bus services, operated by FlixBus, arrive at Milano, Autostazione Lampugnano station.
Zagreb to Assago train services, operated by ÖBB, arrive at Villach Hbf station.
Yes, the driving distance between Zagreb to Assago is 612 km. It takes approximately 6h 14m to drive from Zagreb to Assago.
Book your Zagreb to Assago bus tickets online with FlixBus.
There are 12997+ hotels available in Assago.












































































