There are 8 ways to get from Madrid to Haarlem by plane, train (Renfe, Ouigo, TGV, Eurostar), bus, train, 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 to Amsterdam Airport Schiphol
best- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Amsterdam Airport Schiphol (AMS)plane MAD - AMS
5h 17m€78–267Train
- Take the train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Santstrain Ave
- Take the train from Barcelona-Sants to Lyon Part Dieutrain
- Take the train from Lyon Part Dieu to Marne La Vallee Chessytrain Tgv
- Take the train from Marne La Vallee Chessy to Rotterdam Centraaltrain
- Take the train from Rotterdam Centraal to Haarlemtrain
17h€378–690Bus, train
- Take the bus from Estación Sur de Autobuses to Paris - Bercy-Seine Bus Stationbus
- Take the bus from Paris - Bercy-Seine Bus Station to Rotterdambus
- Take the train from Rotterdam Centraal to Haarlemtrain
24h 28m€130–221Drive 1,748.2 km
- Drive from Madrid to Haarlemcar 1,748.2 km
17h 24m€323–466Fly to Rotterdam The Hague Airport, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Rotterdam The Hague Airport (RTM)plane MAD - RTM
- Take the train from Rotterdam Centraal to Haarlemtrain
8h 33m€190–469Fly to Eindhoven Airport, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Eindhoven Airport (EIN)plane MAD - EIN
- Take the train from Eindhoven Centraal to Amsterdam Centraaltrain
7h 19m€92–347Fly to Brussels Airport, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Brussels Airport (BRU)plane MAD - BRU
- Take the train from Anvers-Central to Amsterdam Centraaltrain
7h 28m€84–340Bus
- Take the bus from Madrid to Brussels-North train stationbus FlixBus N1143
- Take the bus from Brussels-North train station to Amsterdam Sloterdijkbus 810 / ...
26h 15m€160–237
Madrid to Haarlem by train
Comparing Your Travel Options
The cheapest way to get from Madrid to Haarlem is to fly which costs €75 - €270 and takes 5h 17m.
The fastest way to get from Madrid to Haarlem is to fly which takes 5h 17m and costs €75 - €270.
No, there is no direct bus from Madrid to Haarlem. However, there are services departing from Madrid and arriving at Amsterdam Sloterdijk via Brussels-North train station. The journey, including transfers, takes approximately 26h 15m.
No, there is no direct train from Madrid to Haarlem. However, there are services departing from Madrid-Puerta de Atocha-Almudena Grandes and arriving at Haarlem via Barcelona-Sants, Lyon Part Dieu, Marne La Vallee Chessy and Rotterdam Centraal. The journey, including transfers, takes approximately 17h.
The distance between Madrid and Haarlem is 1495 km. The road distance is 1748.2 km.
The best way to get from Madrid to Haarlem without a car is to train which takes 17h and costs €370 - €700.
It takes approximately 5h 17m to get from Madrid to Haarlem, including transfers.
Madrid to Haarlem bus services, operated by FlixBus, depart from Madrid station.
Madrid to Haarlem train services, operated by Renfe AVE, depart from Madrid-Puerta de Atocha-Almudena Grandes station.
The best way to get from Madrid to Haarlem is to fly which takes 5h 17m and costs €75 - €270. Alternatively, you can train, which costs €370 - €700 and takes 17h, you could also bus, which costs €160 - €240 and takes 26h 15m.
What companies run services between Madrid, Spain and Haarlem, Netherlands?
Iberia, Air Europa, and two other airlines fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Amsterdam Airport Schiphol (AMS) hourly. Alternatively, you can take a train from Madrid-Puerta de Atocha-Almudena Grandes to Haarlem via Barcelona-Sants, Lyon Part Dieu, Marne La Vallee Chessy, and Rotterdam Centraal in around 17h.
- Website
- iberia.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Amsterdam Airport Schiphol
- Ave. Duration
- 2h 42m
- When
- Every day
- Estimated price
- €65–220
Flights from Adolfo Suárez Madrid–Barajas Airport to Amsterdam Airport Schiphol via Bilbao
- Ave. Duration
- 5h 35m
- When
- Thursday
- Estimated price
- €110–240
Flights from Adolfo Suárez Madrid–Barajas Airport to Brussels Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €60–180
Flights from Adolfo Suárez Madrid–Barajas Airport to Brussels Airport via Bilbao
- Ave. Duration
- 5h 20m
- When
- Tuesday and Saturday
- Estimated price
- €75–200
- Website
- klm.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Amsterdam Airport Schiphol
- Ave. Duration
- 2h 35m
- When
- Every day
- Estimated price
- €50–350
Flights from Adolfo Suárez Madrid–Barajas Airport to Amsterdam Airport Schiphol via Bilbao
- Ave. Duration
- 4h 30m
- When
- Every day
- Estimated price
- €65–350
- Website
- vueling.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Amsterdam Airport Schiphol
- Ave. Duration
- 2h 45m
- When
- Monday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €65–220
Flights from Adolfo Suárez Madrid–Barajas Airport to Amsterdam Airport Schiphol via Bilbao
- Ave. Duration
- 5h 35m
- When
- Thursday
- Estimated price
- €110–240
Flights from Adolfo Suárez Madrid–Barajas Airport to Brussels Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €60–180
Flights from Adolfo Suárez Madrid–Barajas Airport to Brussels Airport via Bilbao
- Ave. Duration
- 5h 20m
- When
- Tuesday and Saturday
- Estimated price
- €75–200
- Website
- aireuropa.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Amsterdam Airport Schiphol
- Ave. Duration
- 2h 36m
- When
- Every day
- Estimated price
- €50–350
Flights from Adolfo Suárez Madrid–Barajas Airport to Brussels Airport
- Ave. Duration
- 2h 30m
- When
- Every day
- Estimated price
- €60–230
- Website
- transavia.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Rotterdam The Hague Airport via Barcelona
- Ave. Duration
- 4h 52m
- When
- Tuesday, Friday, and Sunday
- Estimated price
- €120–650
Flights from Adolfo Suárez Madrid–Barajas Airport to Rotterdam The Hague Airport via Ibiza
- Ave. Duration
- 4h 40m
- When
- Thursday
- Estimated price
- €140–700
Flights from Adolfo Suárez Madrid–Barajas Airport to Rotterdam The Hague Airport via Valencia
- Ave. Duration
- 5h
- When
- Monday
- Estimated price
- €130–650
Flights from Adolfo Suárez Madrid–Barajas Airport to Rotterdam The Hague Airport via Palma Mallorca
- Ave. Duration
- 5h 10m
- When
- Wednesday
- Estimated price
- €140–700
- Website
- ryanair.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Eindhoven Airport
- Ave. Duration
- 2h 35m
- When
- Monday and Thursday
- Estimated price
- €70–290
Flights from Adolfo Suárez Madrid–Barajas Airport to Eindhoven Airport via London Stansted
- Ave. Duration
- 4h 48m
- When
- Saturday and Friday
- Estimated price
- €70–290
- Website
- brusselsairlines.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Brussels Airport
- Ave. Duration
- 2h 21m
- When
- Every day
- Estimated price
- €55–200
- Website
- britishairways.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Rotterdam The Hague Airport via London City
- Ave. Duration
- 6h 27m
- When
- Wednesday to Friday
- Estimated price
- €240–350
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
- Hourly
- Estimated price
- €85–150
- 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
- €55–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
- Every 4 hours
- 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
- Twice daily
- Estimated price
- €75–110
- Website
- Renfe Viajeros
Train from Barcelona-Sants to Lyon Part Dieu
- Ave. Duration
- 5h 6m
- Frequency
- Once daily
- Estimated price
- €80–120
- Website
- Renfe Viajeros
- Phone
- +33 1 84 94 36 35
- Website
- TGV inOui
Train from Lyon Part Dieu to Marne La Vallee Chessy
- Ave. Duration
- 1h 46m
- Frequency
- Every 2 hours
- Estimated price
- €80–130
- Website
- TGV inOui
- Phone
- +32 70 79 79 79
- Website
- Belgian Railways
Train from Lyon Part Dieu to Marne La Vallee Chessy
- Ave. Duration
- 1h 46m
- Frequency
- 6 times a week
- Estimated price
- €75–120
- Website
- Belgian Railways
Train from Anvers-Central to Amsterdam Centraal
- Ave. Duration
- 1h 20m
- Frequency
- Twice daily
- Estimated price
- €29–45
- Website
- Belgian Railways
- Phone
- +44 (0)3432 186 186
- Website
- Eurostar
Train from Marne La Vallee Chessy to Rotterdam Centraal
- Ave. Duration
- 2h 52m
- Frequency
- 3 times a week
- Estimated price
- €170–280
- Website
- Eurostar
Train from Anvers-Central to Amsterdam Centraal
- Ave. Duration
- 1h 20m
- Frequency
- Hourly
- Estimated price
- €60–100
- Website
- Eurostar
- Phone
- +31 30 751 5155
- Website
- Nederlandse Spoorwegen (NS)
Train from Rotterdam Centraal to Haarlem
- Ave. Duration
- 55 min
- Frequency
- Hourly
- Estimated price
- €7–14
- Website
- Nederlandse Spoorwegen (NS)
Train from Rotterdam Centraal to Haarlem
- Ave. Duration
- 55 min
- Frequency
- Hourly
- Estimated price
- €7–14
- Website
- Nederlandse Spoorwegen (NS)
Train from Rotterdam Centraal to Haarlem
- Ave. Duration
- 55 min
- Frequency
- Hourly
- Estimated price
- €7–14
- Website
- Nederlandse Spoorwegen (NS)
Train from Eindhoven Centraal to Amsterdam Centraal
- Ave. Duration
- 1h 19m
- Frequency
- Every 30 minutes
- Estimated price
- €13–25
- Website
- Nederlandse Spoorwegen (NS)
Train from Anvers-Central to Amsterdam Centraal
- Ave. Duration
- 1h 20m
- Frequency
- Every 4 hours
- Estimated price
- €17–35
- Website
- Nederlandse Spoorwegen (NS)
- Phone
- 0800-0232 545
- Website
- Arriva NL
Train from Eindhoven Centraal to Amsterdam Centraal
- Ave. Duration
- 1h 16m
- Frequency
- Once a week
- Estimated price
- €18–26
- Website
- Arriva NL
- Second Class Single
- €18–26
- Phone
- +3 318 576 2228
- Website
- BlaBlaCar Bus
Bus from Estación Sur de Autobuses to Paris - Bercy-Seine Bus Station
- Ave. Duration
- 15h 30m
- Frequency
- 4 times a day
- Estimated price
- €90–160
- Website
- BlaBlaCar Bus
Bus from Paris - Bercy-Seine Bus Station to Rotterdam
- Ave. Duration
- 6h 55m
- Frequency
- Hourly
- Estimated price
- €30–55
- Website
- BlaBlaCar Bus
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Madrid to Brussels-North train station
- Ave. Duration
- 22h 35m
- Frequency
- Once daily
- Estimated price
- €140–210
- Website
- Flixbus
Bus from Brussels-North train station to Amsterdam Sloterdijk
- Ave. Duration
- 2h 45m
- Frequency
- Hourly
- Estimated price
- €18–27
- Website
- Flixbus
Want to know more about travelling around Netherlands
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 Haarlem bus services, operated by FlixBus, arrive at Brussels-North train station.
Madrid to Haarlem train services, operated by Renfe AVE, arrive at Barcelona-Sants station.
Yes, the driving distance between Madrid to Haarlem is 1748 km. It takes approximately 17h 24m to drive from Madrid to Haarlem.
Book your Madrid to Haarlem train tickets online with Omio.
Book your Madrid to Haarlem bus tickets online with Omio.
There are 2911+ hotels available in Haarlem.










































