There are 7 ways to get from Haarlem to Madrid by plane, train (Eurostar, TGV, Renfe, Ouigo), train, bus, 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.
Fly from Amsterdam Airport Schiphol
best- Fly from Amsterdam Airport Schiphol (AMS) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane AMS - MAD
5h 23m€79–268Train
- Take the train from Haarlem to Rotterdam Centraaltrain
- Take the train from Rotterdam Centraal to Marne La Vallee Chessytrain
- Take the train from Marne La Vallee Chessy to Lyon Part Dieutrain Tgv
- Take the train from Lyon Part Dieu to Barcelona-Santstrain
- Take the train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandestrain Ave
16h 25m€372–694Train, bus
- Take the train from Haarlem to Roosendaaltrain
- Take the train from Roosendaal to Brussels-Nordtrain Ec
- Take the bus from Brussels-North train station to Madridbus
26h 25m€170–260Drive 1,738.2 km
- Drive from Haarlem to Madridcar 1,738.2 km
17h 35m€321–464Train to Eindhoven Airport, fly
- Take the train from Amsterdam Sloterdijk to Eindhoven Centraaltrain
- Fly from Eindhoven Airport (EIN) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane EIN - MAD
7h 20m€92–347Train, train to Brussels Airport, fly
- Take the train from Haarlem to Rotterdam Centraaltrain
- Take the train from Rotterdam Centraal to Brussels Airport-Zaventemtrain
- Fly from Brussels Airport (BRU) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane BRU - MAD
7h 43m€83–276Train, bus via Paris
- Take the train from Haarlem to Rotterdam Centraaltrain
- Take the bus from Rotterdam to Paris - Bercy-Seine Bus Stationbus
- Take the bus from Paris - Bercy-Seine Bus Station to Estación Sur de Autobusesbus
26h 28m€132–234
Haarlem to Madrid by train
Comparing Your Travel Options
The cheapest way to get from Haarlem to Madrid is to fly which costs €75 - €270 and takes 5h 23m.
The fastest way to get from Haarlem to Madrid is to fly which takes 5h 23m and costs €75 - €270.
No, there is no direct train from Haarlem to Madrid. However, there are services departing from Haarlem and arriving at Madrid-Puerta de Atocha-Almudena Grandes via Rotterdam Centraal, Marne La Vallee Chessy, Lyon Part Dieu and Barcelona-Sants. The journey, including transfers, takes approximately 16h 25m.
The distance between Haarlem and Madrid is 1495 km. The road distance is 1738.2 km.
The best way to get from Haarlem to Madrid without a car is to train which takes 16h 25m and costs €370 - €700.
It takes approximately 5h 23m to get from Haarlem to Madrid, including transfers.
Haarlem to Madrid train services, operated by Nederlandse Spoorwegen (NS), depart from Haarlem station.
The best way to get from Haarlem to Madrid is to fly which takes 5h 23m and costs €75 - €270. Alternatively, you can train, which costs €370 - €700 and takes 16h 25m.
Haarlem to Madrid train services, operated by Nederlandse Spoorwegen (NS), arrive at Rotterdam Centraal station.
Yes, the driving distance between Haarlem to Madrid is 1738 km. It takes approximately 17h 35m to drive from Haarlem to Madrid.
What companies run services between Haarlem, Netherlands and Madrid, Spain?
Iberia, Air Europa, and three other airlines fly from Amsterdam Airport Schiphol (AMS) to Adolfo Suárez Madrid–Barajas Airport (MAD) hourly. Alternatively, you can take a train from Haarlem to Madrid-Puerta de Atocha-Almudena Grandes via Rotterdam Centraal, Marne La Vallee Chessy, Lyon Part Dieu, and Barcelona-Sants in around 16h 25m.
- Website
- iberia.com
Flights from Amsterdam Airport Schiphol to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 45m
- When
- Every day
- Estimated price
- €65–220
Flights from Amsterdam Airport Schiphol to Adolfo Suárez Madrid–Barajas Airport via Bilbao
- Ave. Duration
- 5h 5m
- When
- Thursday
- Estimated price
- €110–240
Flights from Brussels Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €60–180
Flights from Brussels Airport to Adolfo Suárez Madrid–Barajas Airport via Bilbao
- Ave. Duration
- 5h 25m
- When
- Tuesday and Saturday
- Estimated price
- €75–200
- Website
- vueling.com
Flights from Amsterdam Airport Schiphol to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 45m
- When
- Every day
- Estimated price
- €65–220
Flights from Amsterdam Airport Schiphol to Adolfo Suárez Madrid–Barajas Airport via Bilbao
- Ave. Duration
- 5h 5m
- When
- Thursday
- Estimated price
- €110–240
Flights from Brussels Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €60–180
Flights from Brussels Airport to Adolfo Suárez Madrid–Barajas Airport via Bilbao
- Ave. Duration
- 5h 25m
- When
- Tuesday and Saturday
- Estimated price
- €75–200
- Website
- klm.com
Flights from Amsterdam Airport Schiphol to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 33m
- When
- Every day
- Estimated price
- €50–420
Flights from Amsterdam Airport Schiphol to Adolfo Suárez Madrid–Barajas Airport via Bilbao
- Ave. Duration
- 4h 25m
- When
- Every day
- Estimated price
- €80–420
- Website
- aireuropa.com
Flights from Amsterdam Airport Schiphol to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 37m
- When
- Every day
- Estimated price
- €50–420
Flights from Brussels Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 30m
- When
- Every day
- Estimated price
- €60–230
- Website
- ryanair.com
Flights from Eindhoven Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 30m
- When
- Monday and Thursday
- Estimated price
- €70–290
Flights from Eindhoven Airport to Adolfo Suárez Madrid–Barajas Airport via London Stansted
- Ave. Duration
- 4h 43m
- When
- Sunday, Thursday, Friday, and Monday
- Estimated price
- €70–290
Flights from Eindhoven Airport to Adolfo Suárez Madrid–Barajas Airport via Ibiza
- Ave. Duration
- 6h
- When
- Tuesday
- Estimated price
- €70–290
- Website
- brusselsairlines.com
Flights from Brussels Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 26m
- When
- Every day
- Estimated price
- €55–200
- Website
- britishairways.com
Flights from Amsterdam Airport Schiphol to Adolfo Suárez Madrid–Barajas Airport via London City
- Ave. Duration
- 4h 20m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €110–280
- Phone
- +31 30 751 5155
- Website
- Nederlandse Spoorwegen (NS)
Train from Haarlem to Rotterdam Centraal
- Ave. Duration
- 55 min
- Frequency
- Hourly
- Estimated price
- €7–14
- Website
- Nederlandse Spoorwegen (NS)
Train from Haarlem to Roosendaal
- Ave. Duration
- 1h 37m
- Frequency
- Hourly
- Estimated price
- €13–26
- Website
- Nederlandse Spoorwegen (NS)
Train from Amsterdam Sloterdijk to Eindhoven Centraal
- Ave. Duration
- 1h 30m
- Frequency
- Every 30 minutes
- Estimated price
- €13–26
- Website
- Nederlandse Spoorwegen (NS)
Train from Haarlem to Rotterdam Centraal
- Ave. Duration
- 55 min
- Frequency
- Hourly
- Estimated price
- €7–14
- Website
- Nederlandse Spoorwegen (NS)
Train from Rotterdam Centraal to Brussels Airport-Zaventem
- Ave. Duration
- 1h 40m
- Frequency
- Hourly
- Estimated price
- €15–29
- Website
- Nederlandse Spoorwegen (NS)
Train from Haarlem to Rotterdam Centraal
- Ave. Duration
- 55 min
- Frequency
- Hourly
- Estimated price
- €7–14
- Website
- Nederlandse Spoorwegen (NS)
- Phone
- +44 (0)3432 186 186
- Website
- Eurostar
Train from Rotterdam Centraal to Marne La Vallee Chessy
- Ave. Duration
- 2h 53m
- Frequency
- 4 times a week
- Estimated price
- €170–280
- Website
- Eurostar
- Phone
- +33 1 84 94 36 35
- Website
- TGV inOui
Train from Marne La Vallee Chessy to Lyon Part Dieu
- Ave. Duration
- 1h 47m
- Frequency
- Every 2 hours
- Estimated price
- €80–130
- Website
- TGV inOui
- Phone
- +32 70 79 79 79
- Website
- Belgian Railways
Train from Marne La Vallee Chessy to Lyon Part Dieu
- Ave. Duration
- 1h 47m
- Frequency
- Twice daily
- Estimated price
- €75–120
- Website
- Belgian Railways
Train from Roosendaal to Brussels-Nord
- Ave. Duration
- 1h 21m
- Frequency
- Hourly
- Estimated price
- €16–24
- Website
- Belgian Railways
Train from Rotterdam Centraal to Brussels Airport-Zaventem
- Ave. Duration
- 1h 39m
- Frequency
- Hourly
- Estimated price
- €25–40
- Website
- Belgian Railways
Rome2Rio's guide to Société Nationale des Chemins de fer Français (SNCF)
Contact DetailsContact Details
- Phone
- +33 1 84 94 36 35
- Website
- Oui.SNCF
Train from Marne La Vallee Chessy to Lyon Part Dieu
- Ave. Duration
- 1h 47m
- Frequency
- Twice daily
- Estimated price
- €70–130
- Website
- Oui.SNCF
Rome2Rio's guide to Renfe Viajeros
Contact DetailsContact Details
- Phone
- +34 91 232 03 20
- Website
- Renfe Viajeros
Train from Lyon Part Dieu to Barcelona-Sants
- Ave. Duration
- 4h 48m
- Frequency
- Once daily
- Estimated price
- €80–120
- Website
- Renfe Viajeros
Train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 3h 28m
- Frequency
- Twice daily
- Estimated price
- €75–110
- Website
- Renfe Viajeros
Rome2Rio's guide to Renfe AVE
Contact DetailsContact Details
- Phone
- +34 91 232 03 20
- Website
- Renfe AVE
Train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 3h 2m
- Frequency
- Hourly
- Estimated price
- €85–150
- Website
- Renfe AVE
- Phone
- +34 900 926 851
- [email protected]
- Website
- Iryo
Train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 3h 23m
- Frequency
- Hourly
- Estimated price
- €55–100
- Website
- Iryo
- Phone
- +34 900 759 781
- Website
- Ouigo
Train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 3h 32m
- Frequency
- Every 4 hours
- Estimated price
- €45–80
- Website
- Ouigo
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Brussels-North train station to Madrid
- Ave. Duration
- 21h 55m
- Frequency
- Once daily
- Estimated price
- €140–210
- Website
- Flixbus
- Phone
- +3 318 576 2228
- Website
- BlaBlaCar Bus
Bus from Rotterdam to Paris - Bercy-Seine Bus Station
- Ave. Duration
- 8h
- Frequency
- Hourly
- Estimated price
- €35–60
- Website
- BlaBlaCar Bus
Bus from Paris - Bercy-Seine Bus Station to Estación Sur de Autobuses
- Ave. Duration
- 15h 45m
- Frequency
- 5 times a day
- Estimated price
- €90–160
- Website
- BlaBlaCar Bus
Want to know more about travelling around Spain
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 France: A guide to SNCF
Read the travel guide
Train travel in Spain: A guide to Renfe
Read the travel guide
Booking & Getting There
Book your Haarlem to Madrid train tickets online with Omio.
There are 7021+ hotels available in Madrid.
















































