There are 12 ways to get from Zagreb to Apulia by shuttle, plane, bus, train, ferry, 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.
Shuttle, shuttle to Trieste – Friuli Venezia Giulia Airport, fly to Bari Karol Wojtyła Airport, bus
best- Take a shuttle bus from Zagreb to Ljubljana
- Take a shuttle bus from Ljubljana to Trieste Airport
- Fly from Trieste – Friuli Venezia Giulia Airport (TRS) to Bari Karol Wojtyła Airport (BRI)plane TRS - BRI
- Take the bus from Bari Airport to Altamura Via Materabus
7h 29m€90–995Fly Zagreb Franjo Tuđman Airport to Bari Karol Wojtyła Airport, bus
cheapest- Fly from Zagreb Franjo Tuđman Airport (ZAG) to Bari Karol Wojtyła Airport (BRI)plane ZAG - BRI
- Take the bus from Bari Airport to Altamura Via Materabus
7h 20m€53–218Bus, train
- 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 Bari Centraletrain Fr
13h 57m€482–1,435Bus, ferry
- Take the bus from Zagreb to Split, Autobusni Kolodvorbus 924 / ...
- Take the ferry from Split to Bariferry 56
17h 2m€155–278Bus
- Take the bus from Zagreb, Autobusni Kolodvor to Novo Mesto, Avtobusna postajabus
- Take the bus from Novo Mesto, Avtobusna postaja to Verona Porta Nuovabus
- Take the bus from Verona Porta Nuova Station to Baribus
18h 10m€242–1,685Shuttle, shuttle to Trieste – Friuli Venezia Giulia Airport, fly to Brindisi Airport
- Take a shuttle bus from Zagreb to Ljubljana
- Take a shuttle bus from Ljubljana to Trieste Airport
- Fly from Trieste – Friuli Venezia Giulia Airport (TRS) to Brindisi Airport (BDS)plane TRS - BDS
7h 21m€109–1,000Fly Zagreb Franjo Tuđman Airport to Dubrovnik Airport, ferry
- Fly from Zagreb Franjo Tuđman Airport (ZAG) to Dubrovnik Airport (DBV)plane ZAG - DBV
- Take the ferry from Dubrovnik to Bariferry
12h 56m€129–223Fly Zagreb Franjo Tuđman Airport to Split Airport, ferry
- Fly from Zagreb Franjo Tuđman Airport (ZAG) to Split Airport (SPU)plane ZAG - SPU
- Take the ferry from Split to Bariferry
14h 20m€201–322Fly Zagreb Franjo Tuđman Airport to Naples Airport, train
- Fly from Zagreb Franjo Tuđman Airport (ZAG) to Naples Airport (NAP)plane ZAG - NAP
- Take the train from Caserta to Foggiatrain
8h 11m€59–236Train
- Take the train from Zagreb Glavni Kol. to Ljubljanatrain 318 / ...
- Take the train from Ljubljana to Villach Hbftrain 38 / ...
- Take the train from Tarvisio Boscoverde to Bologna Centraletrain Nj
- Take the train from Bologna Centrale to Bari Centraletrain Fr
17h 5m€150–371Train, ferry
- Take the train from Zagreb Glavni Kol. to Splittrain Ic
- Take the ferry from Split to Bariferry 56
19h 20m€236–341Drive, ferry
- Drive from Zagreb to Dubrovnikcar
- Take the ferry from Dubrovnik to Bariferry 54
16h€150–230
Zagreb to Apulia by bus and ferry
Questions & Answers
The cheapest way to get from Zagreb to Apulia is to fly and bus which costs €50 - €220 and takes 7h 20m.
The fastest way to get from Zagreb to Apulia is to fly and bus which takes 7h 20m and costs €50 - €220.
No, there is no direct bus from Zagreb to Apulia. However, there are services departing from Zagreb, Autobusni Kolodvor and arriving at Bari via Novo Mesto, Avtobusna postaja and Verona Porta Nuova Station. The journey, including transfers, takes approximately 18h 10m.
No, there is no direct train from Zagreb to Apulia. However, there are services departing from Zagreb Glavni Kol. and arriving at Bari Centrale via Ljubljana, Villach Hbf, Tarvisio Boscoverde and Bologna Centrale. The journey, including transfers, takes approximately 17h 5m.
The distance between Zagreb and Apulia is 897 km.
The best way to get from Zagreb to Apulia without a car is to bus and train which takes 13h 57m and costs €480 - €1500.
It takes approximately 7h 29m to get from Zagreb to Apulia, including transfers.
Zagreb to Apulia bus services, operated by GoOpti, depart from Zagreb, Autobusni Kolodvor station.
Zagreb to Apulia train services, operated by HŽ Putnički prijevoz (HŽPP), depart from Zagreb Glavni Kol. station.
The best way to get from Zagreb to Apulia is to bus which takes 18h 10m and costs €240 - €1700. Alternatively, you can train, which costs €150 - €380 and takes 17h 5m.
What companies run services between Zagreb, Croatia and Apulia, Italy?
You can take a bus from Zagreb, Autobusni Kolodvor to Bari via Novo Mesto, Avtobusna postaja and Verona Porta Nuova Station in around 18h 10m. Alternatively, you can take a train from Zagreb Glavni Kol. to Bari Centrale via Ljubljana, Villach Hbf, Tarvisio Boscoverde, and Bologna Centrale in around 17h 5m.
- Website
- croatiaairlines.com
Flights from Zagreb Franjo Tuđman Airport to Dubrovnik Airport
- Ave. Duration
- 56 min
- When
- Every day
- Estimated price
- €50–95
Flights from Zagreb Franjo Tuđman Airport to Split Airport
- Ave. Duration
- 45 min
- When
- Every day
- Estimated price
- €50–100
- Website
- ita-airways.com
Flights from Trieste – Friuli Venezia Giulia Airport to Bari Karol Wojtyła Airport via Rome
- Ave. Duration
- 3h 22m
- When
- Every day
- Estimated price
- €75–130
Flights from Trieste – Friuli Venezia Giulia Airport to Brindisi Airport via Rome
- Ave. Duration
- 3h 23m
- When
- Every day
- Estimated price
- €70–130
Flights from Zagreb Franjo Tuđman Airport to Dubrovnik Airport
- Ave. Duration
- 55 min
- When
- Sunday and Saturday
- Estimated price
- €50–95
Flights from Zagreb Franjo Tuđman Airport to Split Airport
- Ave. Duration
- 45 min
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €50–100
- Website
- ryanair.com
Flights from Trieste – Friuli Venezia Giulia Airport to Bari Karol Wojtyła Airport
- Ave. Duration
- 1h 15m
- When
- Monday, Tuesday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- €35–110
Flights from Trieste – Friuli Venezia Giulia Airport to Brindisi Airport
- Ave. Duration
- 1h 25m
- When
- Monday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- €35–150
Flights from Zagreb Franjo Tuđman Airport to Naples Airport
- Ave. Duration
- 1h 25m
- When
- Wednesday, Friday, and Sunday
- Estimated price
- €35–160
Flights from Zagreb Franjo Tuđman Airport to Bari Karol Wojtyła Airport via Dubrovnik Airport
- Ave. Duration
- 4h 8m
- When
- Wednesday and Monday
- Estimated price
- €65–190
Flights from Zagreb Franjo Tuđman Airport to Bari Karol Wojtyła Airport via Vienna
- Ave. Duration
- 5h 5m
- When
- Monday to Saturday
- Estimated price
- €50–150
- Phone
- +39 06 68475475
- Website
- Trenitalia Frecce
Train from Venezia Mestre to Bari Centrale
- Ave. Duration
- 7h 23m
- Frequency
- 5 times a day
- Estimated price
- €110–230
- Schedules at
- Trenitalia Frecce
Train from Caserta to Foggia
- Ave. Duration
- 1h 59m
- Frequency
- Hourly
- Estimated price
- €23–50
- Schedules at
- Trenitalia Frecce
Train from Bologna Centrale to Bari Centrale
- Ave. Duration
- 5h 42m
- Frequency
- Hourly
- Estimated price
- €90–190
- Schedules at
- Trenitalia Frecce
- Phone
- +39 06 68475475
- Website
- Trenitalia Intercity
Train from Caserta to Foggia
- Ave. Duration
- 2h 26m
- Frequency
- Twice daily
- Estimated price
- €17–40
- Website
- Trenitalia Intercity
Train from Bologna Centrale to Bari Centrale
- Ave. Duration
- 7h 5m
- Frequency
- Every 2 hours
- Estimated price
- €70–150
- Website
- Trenitalia Intercity
- Phone
- +385 60 333 444
- informacije@hzpp.hr
- Website
- HŽ Putnički prijevoz (HŽPP)
Train from Zagreb Glavni Kol. to Ljubljana
- Ave. Duration
- 2h 26m
- Frequency
- Every 2 hours
- Estimated price
- €28–40
- Website
- HŽ Putnički prijevoz (HŽPP)
Train from Ljubljana to Villach Hbf
- Ave. Duration
- 1h 40m
- Frequency
- 4 times a day
- Estimated price
- €20–29
- Website
- HŽ Putnički prijevoz (HŽPP)
Train from Zagreb Glavni Kol. to Split
- Ave. Duration
- 7h 58m
- Frequency
- Twice daily
- Estimated price
- €85–120
- Website
- HŽ Putnički prijevoz (HŽPP)
- Phone
- +386 1 29 13 331
- potnik.info@slo-zeleznice.si
- Website
- Slovenske železnice (SŽ)
Train from Ljubljana to Villach Hbf
- Ave. Duration
- 1h 40m
- Frequency
- Every 2 hours
- Estimated price
- €20–29
- Website
- Slovenske železnice (SŽ)
- Phone
- +43 (0) 51717
- Website
- Nightjet
Train from Tarvisio Boscoverde to Bologna Centrale
- Ave. Duration
- 3h 49m
- Frequency
- Once daily
- Estimated price
- €27–95
- Website
- Nightjet
- Sleeper Carriage
- €93–95
- Couchette Carriage
- €55–70
- Seating Carriage
- €27–32
- Phone
- +386 1 320 4530
- info@goopti.com
- Website
- GoOpti
Shuttle from Zagreb to Ljubljana
- Ave. Duration
- 1h 48m
- Frequency
- On demand
- Estimated price
- €28–450
- Website
- GoOpti
- Shared
- €28–75
- Private
- €140–180
Shuttle from Ljubljana to Trieste Airport
- Ave. Duration
- 1h 16m
- Frequency
- On demand
- Estimated price
- €150–420
- Website
- GoOpti
- Private
- €204
Bus from Zagreb, Autobusni Kolodvor to Novo Mesto, Avtobusna postaja
- Ave. Duration
- 1h 19m
- Frequency
- On demand
- Estimated price
- €22–260
- Website
- GoOpti
- Shared
- €22
- Private
- €92
Bus from Novo Mesto, Avtobusna postaja to Stazione Mestre
- Ave. Duration
- 3h 45m
- Frequency
- On demand
- Estimated price
- €350–950
- Website
- GoOpti
Bus from Zagreb, Autobusni Kolodvor to Novo Mesto, Avtobusna postaja
- Ave. Duration
- 1h 19m
- Frequency
- On demand
- Estimated price
- €22–260
- Website
- GoOpti
- Shared
- €22
- Private
- €92
Bus from Novo Mesto, Avtobusna postaja to Verona Porta Nuova
- Ave. Duration
- 5h 52m
- Frequency
- On demand
- Estimated price
- €132–1,300
- Website
- GoOpti
- Shared
- €132
- Private
- €463
Shuttle from Zagreb to Ljubljana
- Ave. Duration
- 1h 48m
- Frequency
- On demand
- Estimated price
- €28–450
- Website
- GoOpti
- Shared
- €28–75
- Private
- €140–180
Shuttle from Ljubljana to Trieste Airport
- Ave. Duration
- 1h 16m
- Frequency
- On demand
- Estimated price
- €150–420
- Website
- GoOpti
- Private
- €204
- Phone
- +386 40 121 900
- mamut.slovenija@gmail.com
- Website
- slovenija.eu.com
Shuttle from Ljubljana to Trieste Airport
- Ave. Duration
- 1h 30m
- Frequency
- On demand
- Estimated price
- €110–220
- Schedules at
- slovenija.eu.com
- 1 -3 persons
- €170
- 4-8 persons
- €220
Shuttle from Ljubljana to Trieste Airport
- Ave. Duration
- 1h 30m
- Frequency
- On demand
- Estimated price
- €110–220
- Schedules at
- slovenija.eu.com
- 1 -3 persons
- €170
- 4-8 persons
- €220
- Phone
- +386 070740450
- info@easydrive.si
- Website
- easydrive.si
Shuttle from Ljubljana to Trieste Airport
- Ave. Duration
- 3h
- Frequency
- Twice daily
- Estimated price
- €20–40
- Schedules at
- easydrive.si
Shuttle from Ljubljana to Trieste Airport
- Ave. Duration
- 3h
- Frequency
- Twice daily
- Estimated price
- €20–40
- Schedules at
- easydrive.si
- Phone
- +39 080 579 0211
- info@sitasudtrasporti.it
- Website
- sitasudtrasporti.it
Bus from Bari Airport to Altamura Via Matera
- Ave. Duration
- 50 min
- Frequency
- Every 4 hours
- Estimated price
- €2–6
- Schedules at
- sitasudtrasporti.it
- Book at
- marozzivt.it
Bus from Bari Airport to Altamura Via Matera
- Ave. Duration
- 50 min
- Frequency
- Every 4 hours
- Estimated price
- €2–6
- Schedules at
- sitasudtrasporti.it
- Book at
- marozzivt.it
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- Flixbus
Bus from Zagreb to Split, Autobusni Kolodvor
- Ave. Duration
- 5h 40m
- Frequency
- Hourly
- Estimated price
- €30–50
- Website
- Flixbus
- Phone
- +385 (0)72 660 660
- info@arriva.com.hr
- Website
- Arriva Croatia
Bus from Zagreb to Split, Autobusni Kolodvor
- Ave. Duration
- 4h 55m
- Frequency
- Every 4 hours
- Estimated price
- €3–17
- Website
- Arriva Croatia
- Phone
- +385 1 3335 170
- uprava@samoborcek.hr
- Website
- samoborcek.hr
Bus from Zagreb to Split, Autobusni Kolodvor
- Ave. Duration
- 6h 10m
- Frequency
- Once daily
- Estimated price
- €11–60
- Schedules at
- samoborcek.hr
- Phone
- +39 0362 185 0590
- info@onebus.it
- Website
- Onebus
Bus from Verona Porta Nuova Station to Bari
- Ave. Duration
- 9h 29m
- Frequency
- Once a week
- Estimated price
- €90–130
- Website
- Onebus
- Phone
- +385 72 303 337
- passdept_h@jadrolinija.hr
- Website
- Jadrolinija
Ferry from Split to Bari
- Ave. Duration
- 10h
- Frequency
- Once a week
- Estimated price
- €150–220
- Website
- Jadrolinija
Ferry from Dubrovnik to Bari
- Ave. Duration
- 8h
- Frequency
- Twice a week
- Estimated price
- €75–120
- Website
- Jadrolinija
Ferry from Split to Bari
- Ave. Duration
- 10h
- Frequency
- Once a week
- Estimated price
- €150–220
- Website
- Jadrolinija
Ferry from Split to Bari
- Ave. Duration
- 10h
- Frequency
- Once a week
- Estimated price
- €150–220
- Website
- Jadrolinija
Ferry from Dubrovnik to Bari
- Ave. Duration
- 8h
- Frequency
- Twice a week
- Estimated price
- €75–120
- Website
- Jadrolinija
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
Travelling Croatia’s Dalmatian Coast by boat, bus, car and train
Read the travel guide
Travelling by boat in Italy
Read the travel guide
More Questions & Answers
Zagreb to Apulia bus services, operated by GoOpti, arrive at Novo Mesto, Avtobusna postaja station.
Zagreb to Apulia train services, operated by HŽ Putnički prijevoz (HŽPP), arrive at Ljubljana station.
Book your Zagreb to Apulia train tickets online with Omio.
There are 4536+ hotels available in Apulia.




















































