There are 8 ways to get from Madrid to Haarlem by plane, train (Renfe, Ouigo, TGV, Eurostar), bus, car, train, or train (Renfe, TGV, Eurostar)
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 12m€83–239Train via Lyon
- 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 Brussel-Zuid / Bruxelles-Miditrain Tgv
- Take the train from Brussel-Zuid / Bruxelles-Midi to Rotterdam Centraaltrain
- Take the train from Rotterdam Centraal to Haarlemtrain
16h 58m€335–635Bus via Paris
- Take the bus from Estación Sur de Autobuses to Paris - Bercy-Seine Bus Stationbus BlaBlaCar Bus
- Take the bus from Paris - Bercy-Seine Bus Station to Amsterdam City Center - Sloterdijkbus BlaBlaCar Bus
23h€152–278Drive 1,748.2 km
- Drive from Madrid to Haarlemcar 1,748.2 km
17h 24m€312–451Fly 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 Den Haag Laan v NOI to Haarlemtrain
8h 11m€209–569Fly 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 19m€84–321Train
- Take the train from Madrid Chamartín to Iruntrain Alv / ...
- Take the train from Hendaye to Paris Montparnasse 1 Et 2train Tgv
- Take the train from Paris Nord to Rotterdam Centraaltrain
- Take the train from Rotterdam Centraal to Haarlemtrain
17h 19m€353–629Bus
- 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 10m€150–248
Madrid to Haarlem by train
Questions & Answers
The cheapest way to get from Madrid to Haarlem is to fly which costs €80 - €240 and takes 5h 12m.
The fastest way to get from Madrid to Haarlem is to fly which takes 5h 12m and costs €80 - €240.
No, there is no direct bus from Madrid to Haarlem. However, there are services departing from Estación Sur de Autobuses and arriving at Amsterdam City Center - Sloterdijk via Paris - Bercy-Seine Bus Station. The journey, including transfers, takes approximately 23h.
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, Brussel-Zuid / Bruxelles-Midi and Rotterdam Centraal. The journey, including transfers, takes approximately 16h 58m.
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 via Lyon which takes 16h 58m and costs €330 - €650.
It takes approximately 5h 12m to get from Madrid to Haarlem, including transfers.
Madrid to Haarlem bus services, operated by BlaBlaCar Bus, depart from Estación Sur de Autobuses 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 12m and costs €80 - €240. Alternatively, you can train via Lyon, which costs €330 - €650 and takes 16h 58m, you could also bus via Paris, which costs €150 - €280 and takes 23h.
What companies run services between Madrid, Spain and Haarlem, Netherlands?
Iberia, Air Europa, and KLM fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Amsterdam Airport Schiphol (AMS) every 2 hours. Alternatively, you can take a train from Madrid-Puerta de Atocha-Almudena Grandes to Haarlem via Barcelona-Sants, Lyon Part Dieu, Brussel-Zuid / Bruxelles-Midi, and Rotterdam Centraal in around 16h 58m.
- Website
- iberia.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Amsterdam Airport Schiphol
- Ave. Duration
- 2h 40m
- When
- Every day
- Estimated price
- €60–200
Flights from Adolfo Suárez Madrid–Barajas Airport to Brussels Airport
- Ave. Duration
- 2h 21m
- When
- Every day
- Estimated price
- €60–150
- Website
- klm.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Amsterdam Airport Schiphol
- Ave. Duration
- 2h 30m
- When
- Every day
- Estimated price
- €65–330
Flights from Adolfo Suárez Madrid–Barajas Airport to Amsterdam Airport Schiphol via Bilbao
- Ave. Duration
- 4h 20m
- When
- Every day
- Estimated price
- €65–330
- Website
- aireuropa.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Amsterdam Airport Schiphol
- Ave. Duration
- 2h 32m
- When
- Every day
- Estimated price
- €65–330
Flights from Adolfo Suárez Madrid–Barajas Airport to Brussels Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €55–180
- Website
- vueling.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Amsterdam Airport Schiphol
- Ave. Duration
- 2h 40m
- When
- Tuesday to Sunday
- Estimated price
- €60–200
Flights from Adolfo Suárez Madrid–Barajas Airport to Brussels Airport
- Ave. Duration
- 2h 21m
- When
- Every day
- Estimated price
- €60–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Brussels Airport via Bilbao
- Ave. Duration
- 5h 5m
- When
- Tuesday, Thursday, and Saturday
- Estimated price
- €130–220
- Website
- transavia.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Rotterdam The Hague Airport via Geneva
- Ave. Duration
- 4h 15m
- When
- Saturday
- Estimated price
- €110–460
Flights from Adolfo Suárez Madrid–Barajas Airport to Rotterdam The Hague Airport via Valencia
- Ave. Duration
- 4h 15m
- When
- Monday, Wednesday, and Friday
- Estimated price
- €130–650
Flights from Adolfo Suárez Madrid–Barajas Airport to Rotterdam The Hague Airport via Barcelona
- Ave. Duration
- 4h 25m
- When
- Thursday
- Estimated price
- €120–600
Flights from Adolfo Suárez Madrid–Barajas Airport to Rotterdam The Hague Airport via Ibiza
- Ave. Duration
- 4h 35m
- When
- Saturday and Tuesday
- Estimated price
- €140–650
- Website
- brusselsairlines.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Brussels Airport
- Ave. Duration
- 2h 16m
- 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
- 5h 40m
- When
- Monday, Tuesday, Friday, and Thursday
- Estimated price
- €200–420
- Website
- ryanair.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Brussels Airport
- Ave. Duration
- 2h 20m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €50–170
Rome2Rio's guide to Renfe AVE
Contact DetailsContact Details
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 22m
- Frequency
- Every 30 minutes
- Estimated price
- €95–170
- Website
- https://www.renfe.com/es/en
- Phone
- +34 900 926 851
- [email protected]
- Website
- iryo.eu
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 31m
- Frequency
- Hourly
- Estimated price
- €60–130
- Website
- https://iryo.eu/en/home
- Phone
- +34 900 759 781
- Website
- ouigo.com
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 23m
- Frequency
- Every 2 hours
- Estimated price
- €55–100
- Website
- https://www.ouigo.com/es/en
Rome2Rio's guide to Renfe Viajeros
Contact DetailsContact Details
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 29m
- Frequency
- 4 times a day
- Estimated price
- €75–120
- Website
- https://www.renfe.com/es/en
Train from Barcelona-Sants to Lyon Part Dieu
- Ave. Duration
- 5h 6m
- Frequency
- Twice daily
- Estimated price
- €80–130
- Website
- https://www.renfe.com/es/en
Train from Madrid Chamartín to Irun
- Ave. Duration
- 6h 7m
- Frequency
- Every 4 hours
- Estimated price
- €70–110
- Website
- https://www.renfe.com/es/en
- Phone
- +33 1 84 94 36 35
- Website
- sncf-connect.com
Train from Lyon Part Dieu to Brussel-Zuid / Bruxelles-Midi
- Ave. Duration
- 3h 51m
- Frequency
- Hourly
- Estimated price
- €150–250
- Website
- https://www.sncf-connect.com/en-en
Train from Hendaye to Paris Montparnasse 1 Et 2
- Ave. Duration
- 4h 50m
- Frequency
- Every 3 hours
- Estimated price
- €160–260
- Website
- https://www.sncf-connect.com/en-en
- Phone
- +44 (0)3432 186 186
- Website
- eurostar.com
Train from Brussel-Zuid / Bruxelles-Midi to Rotterdam Centraal
- Ave. Duration
- 1h 9m
- Frequency
- Hourly
- Estimated price
- €40–75
- Website
- https://www.eurostar.com/rw-en
Train from Anvers-Central to Amsterdam Centraal
- Ave. Duration
- 1h 20m
- Frequency
- Hourly
- Estimated price
- €50–85
- Website
- https://www.eurostar.com/rw-en
Train from Paris Nord to Rotterdam Centraal
- Ave. Duration
- 2h 40m
- Frequency
- Hourly
- Estimated price
- €140–240
- Website
- https://www.eurostar.com/rw-en
- Phone
- +31 30 751 5155
- Website
- ns.nl
Train from Rotterdam Centraal to Haarlem
- Ave. Duration
- 55 min
- Frequency
- Every 30 minutes
- Estimated price
- €7–16
- Website
- https://www.ns.nl/en
Train from Den Haag Laan v NOI to Haarlem
- Ave. Duration
- 45 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–10
- Website
- https://www.ns.nl/en
Train from Anvers-Central to Amsterdam Centraal
- Ave. Duration
- 1h 19m
- Frequency
- Every 2 hours
- Estimated price
- €17–40
- Website
- https://www.ns.nl/en
Train from Rotterdam Centraal to Haarlem
- Ave. Duration
- 55 min
- Frequency
- Every 30 minutes
- Estimated price
- €7–16
- Website
- https://www.ns.nl/en
- Phone
- +33 1 84 94 36 35
- Website
- track.effiliation.com
Train from Hendaye to Paris Montparnasse 1 Et 2
- Ave. Duration
- 5h 5m
- Frequency
- Twice daily
- Estimated price
- €130–260
- Website
- https://track.effiliation.com/servlet/effi.redir?id_compteur=23007591&url=https%3A%2F%2Fwww.sncf-connect.com%2Fen-en%2F
- Phone
- +3 318 576 2228
- Website
- blablacar.co.uk
Bus from Estación Sur de Autobuses to Paris - Bercy-Seine Bus Station
- Ave. Duration
- 15h 30m
- Frequency
- Twice daily
- Estimated price
- €110–200
- Website
- https://www.blablacar.co.uk/bus
Bus from Paris - Bercy-Seine Bus Station to Amsterdam City Center - Sloterdijk
- Ave. Duration
- 6h 45m
- Frequency
- Hourly
- Estimated price
- €40–80
- Website
- https://www.blablacar.co.uk/bus
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- https://www.flixbus.fr
Bus from Madrid to Brussels-North train station
- Ave. Duration
- 22h 35m
- Frequency
- Once daily
- Estimated price
- €130–220
- Website
- https://www.flixbus.co.uk
Bus from Brussels-North train station to Amsterdam Sloterdijk
- Ave. Duration
- 2h 45m
- Frequency
- Hourly
- Estimated price
- €17–28
- Website
- https://www.flixbus.co.uk
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
More Questions & Answers
Madrid to Haarlem bus services, operated by BlaBlaCar Bus, arrive at Paris - Bercy-Seine Bus 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 3077+ hotels available in Haarlem.











































