There are 9 ways to get from Madrid to Zagreb by plane, train, bus, train (Renfe, Ouigo, TGV), car, 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.
Fly to Zagreb Franjo Tuđman Airport
best- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Zagreb Franjo Tuđman Airport (ZAG)plane MAD - ZAG
5h 49m€67–233Train, bus via Barcelona
- Take the train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Santstrain Ave
- Take the train from Barcelona-Sants to Valence Tgv Rhone-Alpes Sudtrain Tgv
- Take the train from Valence Tgv Rhone-Alpes Sud to Chambery Challes Les Eauxtrain Ter
- Take the bus from Chambéry - Bus Station to Zagreb - Bus Stationbus
26h 47m€211–488Train
- Take the train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Santstrain Ave
- Take the train from Barcelona-Sants to Paris Gare De Lyontrain Tgv
- Take the train from Paris Gare De Lyon to Augsburg Hbftrain Tgv
- Take the train from Augsburg Hbf to Salzburg Hauptbahnhoftrain 62 / ...
- Take the train from Salzburg Hbf to Zagreb Glavni Kol.train Ec
29h 15m€553–891Drive 2,074.4 km
- Drive from Madrid to Zagrebcar 2,074.4 km
22h 4m€338–488Fly to Ljubljana, shuttle
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Ljubljana (LJU)plane MAD - LJU
- Take a shuttle bus from Zgornji Brnik, Letališče Jožeta Pučnika Ljubljana to Zagreb
7h 31m€119–561Fly to Graz Airport, shuttle
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Graz Airport (GRZ)plane MAD - GRZ
- Take a shuttle bus from Graz Airport to Zagreb
9h 54m€421–771Train, bus
- Take the train from Madrid-Puerta de Atocha-Almudena Grandes to Marseille St Charlestrain 9725
- Take the bus from Marseille, Gare de Marseille-Saint-Charles to Zagrebbus N482
28h 22m€246–367Bus via Maribor
- Take the bus from Méndez Álvaro Estación Sur to Padovabus
- Take the bus from Padova to Edvard Rusjan Airportbus
- Take the bus from Edvard Rusjan Airport to Zagrebbus
33h 51m€281–1,121Bus
- Take the bus from Méndez Álvaro Estación Sur to Padovabus
- Take the bus from Padova to Zagrebbus
36h 4m
Madrid to Zagreb by train and bus
Comparing Your Travel Options
The cheapest way to get from Madrid to Zagreb is to fly which costs €65 - €240 and takes 5h 49m.
The fastest way to get from Madrid to Zagreb is to fly which takes 5h 49m and costs €65 - €240.
No, there is no direct bus from Madrid to Zagreb. However, there are services departing from Méndez Álvaro Estación Sur and arriving at Zagreb via Padova and Edvard Rusjan Airport. The journey, including transfers, takes approximately 33h 51m.
No, there is no direct train from Madrid to Zagreb. However, there are services departing from Madrid-Puerta de Atocha-Almudena Grandes and arriving at Zagreb Glavni Kol. via Barcelona-Sants, Paris Gare De Lyon, Augsburg Hbf and Salzburg Hbf. The journey, including transfers, takes approximately 29h 15m.
The distance between Madrid and Zagreb is 1718 km. The road distance is 2074.4 km.
The best way to get from Madrid to Zagreb without a car is to train and bus via Barcelona which takes 26h 47m and costs €210 - €490.
It takes approximately 5h 49m to get from Madrid to Zagreb, including transfers.
Madrid to Zagreb bus services, operated by Tabita Tour, depart from Méndez Álvaro Estación Sur station.
Madrid to Zagreb train services, operated by Renfe AVE, depart from Madrid-Puerta de Atocha-Almudena Grandes station.
The best way to get from Madrid to Zagreb is to fly which takes 5h 49m and costs €65 - €240. Alternatively, you can train, which costs €550 - €900 and takes 29h 15m, you could also bus via Maribor, which costs €280 - €1200 and takes 33h 51m.
What companies run services between Madrid, Spain and Zagreb, Croatia?
Iberia, Croatia Airlines, and four other airlines fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Zagreb Franjo Tuđman Airport (ZAG) 5 times a day. Alternatively, you can take a train from Madrid-Puerta de Atocha-Almudena Grandes to Zagreb Glavni Kol. via Barcelona-Sants, Paris Gare De Lyon, Augsburg Hbf, Salzburg Hauptbahnhof, and Salzburg Hbf in around 29h 15m.
- Website
- lufthansa.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Zagreb Franjo Tuđman Airport via Munich
- Ave. Duration
- 5h 22m
- When
- Every day
- Estimated price
- €70–360
Flights from Adolfo Suárez Madrid–Barajas Airport to Ljubljana via Munich
- Ave. Duration
- 4h 30m
- When
- Monday, Tuesday, Friday, and Sunday
- Estimated price
- €80–410
Flights from Adolfo Suárez Madrid–Barajas Airport to Ljubljana via Frankfurt
- Ave. Duration
- 5h 15m
- When
- Every day
- Estimated price
- €110–410
Flights from Adolfo Suárez Madrid–Barajas Airport to Graz Airport via Munich
- Ave. Duration
- 4h 57m
- When
- Every day
- Estimated price
- €100–550
Flights from Adolfo Suárez Madrid–Barajas Airport to Graz Airport via Frankfurt
- Ave. Duration
- 5h 23m
- When
- Every day
- Estimated price
- €150–550
- Website
- iberia.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Zagreb Franjo Tuđman Airport
- Ave. Duration
- 2h 45m
- When
- Thursday
- Estimated price
- €70–160
Flights from Adolfo Suárez Madrid–Barajas Airport to Ljubljana
- Ave. Duration
- 2h 40m
- When
- Saturday
- Estimated price
- €110–210
Flights from Adolfo Suárez Madrid–Barajas Airport to Ljubljana via Barcelona
- Ave. Duration
- 5h 30m
- When
- Thursday and Sunday
- Estimated price
- €60–260
- Website
- ryanair.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Zagreb Franjo Tuđman Airport via Palma Mallorca
- Ave. Duration
- 5h 30m
- When
- Wednesday to Saturday
- Estimated price
- €55–210
Flights from Adolfo Suárez Madrid–Barajas Airport to Zagreb Franjo Tuđman Airport via Milan Bergamo
- Ave. Duration
- 5h 30m
- When
- Friday and Saturday
- Estimated price
- €55–210
- Website
- vueling.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Ljubljana via Barcelona
- Ave. Duration
- 5h 30m
- When
- Thursday and Sunday
- Estimated price
- €60–260
- Website
- croatiaairlines.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Zagreb Franjo Tuđman Airport
- Ave. Duration
- 2h 40m
- When
- Monday, Thursday, and Saturday
- Estimated price
- €85–220
- Website
- transavia.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Ljubljana via Paris Orly
- Ave. Duration
- 6h 5m
- When
- Tuesday
- Estimated price
- €85–430
- Website
- eurowings.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Graz Airport via Dusseldorf
- Ave. Duration
- 6h 10m
- When
- Wednesday to Friday
- Estimated price
- €100–400
- Website
- swiss.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Graz Airport via Zurich
- Ave. Duration
- 7h 45m
- When
- Wednesday to Friday
- Estimated price
- €120–470
Rome2Rio's guide to Renfe AVE
Contact DetailsContact Details
- Phone
- +34 91 232 03 20
- Website
- Renfe AVE
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 2m
- Frequency
- Every 30 minutes
- Estimated price
- €90–160
- Website
- Renfe AVE
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 2m
- Frequency
- Every 30 minutes
- Estimated price
- €90–160
- Website
- Renfe AVE
- Phone
- +34 900 926 851
- [email protected]
- Website
- Iryo
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 24m
- Frequency
- Hourly
- Estimated price
- €60–100
- Website
- Iryo
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 24m
- Frequency
- Hourly
- Estimated price
- €60–100
- Website
- Iryo
- Phone
- +34 900 759 781
- Website
- Ouigo
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 23m
- Frequency
- Hourly
- Estimated price
- €45–80
- Website
- Ouigo
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 23m
- Frequency
- Hourly
- Estimated price
- €45–80
- Website
- Ouigo
Rome2Rio's guide to Renfe Viajeros
Contact DetailsContact Details
- Phone
- +34 91 232 03 20
- Website
- Renfe Viajeros
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 29m
- Frequency
- 4 times a day
- Estimated price
- €75–110
- Website
- Renfe Viajeros
Train from Barcelona-Sants to Valence Tgv Rhone-Alpes Sud
- Ave. Duration
- 4h 29m
- Frequency
- Twice daily
- Estimated price
- €65–100
- Website
- Renfe Viajeros
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 29m
- Frequency
- 4 times a day
- Estimated price
- €75–110
- Website
- Renfe Viajeros
Train from Madrid-Puerta de Atocha-Almudena Grandes to Marseille St Charles
- Ave. Duration
- 8h 42m
- Frequency
- Twice daily
- Estimated price
- €140–210
- Website
- Renfe Viajeros
- Phone
- +33 1 84 94 36 35
- Website
- TGV inOui
Train from Barcelona-Sants to Valence Tgv Rhone-Alpes Sud
- Ave. Duration
- 4h 32m
- Frequency
- 4 times a day
- Estimated price
- €100–160
- Website
- TGV inOui
Train from Barcelona-Sants to Paris Gare De Lyon
- Ave. Duration
- 6h 47m
- Frequency
- 4 times a day
- Estimated price
- €210–320
- Website
- TGV inOui
Train from Paris Gare De Lyon to Augsburg Hbf
- Ave. Duration
- 5h 56m
- Frequency
- Twice a week
- Estimated price
- €150–230
- Website
- TGV inOui
- Phone
- +33 1 84 94 36 35
- Website
- Oui.SNCF
Train from Valence Tgv Rhone-Alpes Sud to Chambery Challes Les Eaux
- Ave. Duration
- 1h 56m
- Frequency
- Hourly
- Estimated price
- €26–45
- Website
- Oui.SNCF
- Phone
- +33 4 13 94 30 50
- Website
- Zou! Lignes Express Régionales
Train from Valence Tgv Rhone-Alpes Sud to Chambery Challes Les Eaux
- Ave. Duration
- 1h 53m
- Frequency
- Every 2 hours
- Estimated price
- €40–55
- Website
- Zou! Lignes Express Régionales
- Phone
- +49 30 2970
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Augsburg Hbf to Salzburg Hauptbahnhof
- Ave. Duration
- 2h 17m
- Frequency
- 5 times a day
- Estimated price
- €35–80
- Website
- Deutsche Bahn Intercity (DB IC)
- Phone
- +43 1 89900
- [email protected]
- Website
- Westbahn
Train from Augsburg Hbf to Salzburg Hauptbahnhof
- Ave. Duration
- 2h 16m
- Frequency
- 5 times a day
- Estimated price
- €40–70
- Website
- Westbahn
- Phone
- +43 (0) 5 1717
- Website
- ÖBB EuroCity
Train from Salzburg Hbf to Zagreb Glavni Kol.
- Ave. Duration
- 7h 13m
- Frequency
- 4 times a week
- Estimated price
- €108
- Website
- ÖBB EuroCity
- Website
- ÖBB EuroCity
- Phone
- +3 318 576 2228
- Website
- BlaBlaCar Bus
Bus from Chambéry - Bus Station to Zagreb - Bus Station
- Ave. Duration
- 15h
- Frequency
- 4 times a week
- Estimated price
- €70–120
- Website
- BlaBlaCar Bus
- Phone
- +386 1 320 4530
- [email protected]
- Website
- GoOpti
Shuttle from Zgornji Brnik, Letališče Jožeta Pučnika Ljubljana to Zagreb
- Ave. Duration
- 2h 6m
- Frequency
- On demand
- Estimated price
- €28–330
- Website
- GoOpti
- Shared
- €28–75
- Private
- €140–180
Shuttle from Graz Airport to Zagreb
- Ave. Duration
- 2h 49m
- Frequency
- On demand
- Estimated price
- €230–390
- Website
- GoOpti
- Private
- €278
Bus from Padova to Edvard Rusjan Airport
- Ave. Duration
- 3h 53m
- Frequency
- On demand
- Estimated price
- €111–750
- Website
- GoOpti
- Shared
- €111
- Private
- €411
Bus from Edvard Rusjan Airport to Zagreb
- Ave. Duration
- 1h 24m
- Frequency
- On demand
- Estimated price
- €45–220
- Website
- GoOpti
- Private
- €130
- Shared
- €45–70
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Marseille, Gare de Marseille-Saint-Charles to Zagreb
- Ave. Duration
- 18h 40m
- Frequency
- Once daily
- Estimated price
- €100–160
- Website
- Flixbus
- Phone
- +4-0263-21.55.00
- Website
- tabitatour.ro
Bus from Méndez Álvaro Estación Sur to Padova
- Ave. Duration
- 27h 34m
- Frequency
- Once a week
- Estimated price
- €120–160
- Schedules at
- tabitatour.ro
Bus from Méndez Álvaro Estación Sur to Padova
- Ave. Duration
- 27h 34m
- Frequency
- Once a week
- Estimated price
- €120–160
- Schedules at
- tabitatour.ro
- Phone
- +359 2 980 56 58
- [email protected]
- Website
- mm-travel.bg
Bus from Padova to Zagreb
- Ave. Duration
- 7h 30m
- Frequency
- Once a week
- Schedules at
- mm-travel.bg
- Book at
- tickets.mm-travel.bg
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
5 delightfully under-the-radar French towns you need to visit
Read the travel guide
Train travel in Spain: A guide to Renfe
Read the travel guide
What are the different types of Renfe trains in Spain?
Read the travel guide
Booking & Getting There
Madrid to Zagreb bus services, operated by Tabita Tour, arrive at Padova station.
Madrid to Zagreb train services, operated by Renfe AVE, arrive at Barcelona-Sants station.
Yes, the driving distance between Madrid to Zagreb is 2074 km. It takes approximately 22h 4m to drive from Madrid to Zagreb.
Book your Madrid to Zagreb train tickets online with Omio.
Book your Madrid to Zagreb bus tickets online with Omio.
There are 2856+ hotels available in Zagreb.



















































