There are 10 ways to get from Madrid to Spa by plane, train, train (Renfe, Ouigo, TGV), bus, car, or train (Renfe, TGV)
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 Brussels Airport, train
best- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Brussels Airport (BRU)plane MAD - BRU
- Take the train from Louvain to Verviers-Centraltrain
6h 59m€80–226Fly to Brussels South Charleroi Airport, bus
cheapest- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Brussels South Charleroi Airport (CRL)plane MAD - CRL
- Take the bus from Charleroi Airport to Liège Rue du Plan Inclinedbus
7h 59m€61–206Train via Barcelona
- 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 Bruxelles-Midi to Verviers-Centraltrain Ic / ...
16h 34m€211–384Bus
- Take the bus from Estación Sur de Autobuses to Paris, Quai de Bercybus
- Take the bus from Paris - Bercy-Seine Bus Station to Liègebus BlaBlaCar Bus
25h 40m€81–259Drive 1,604.1 km
- Drive from Madrid to Spacar 1,604.1 km
16h 26m€248–359Fly to Düsseldorf International Airport, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Düsseldorf International Airport (DUS)plane MAD - DUS
- Take the train from Duesseldorf Hbf to Aachen Hbftrain
8h 37m€105–305Fly to Luxembourg, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Luxembourg (LUX)plane MAD - LUX
- Take the train from Pfaffenthal-Kirchberg to Trois-Pontstrain
8h 56m€69–201Fly to Frankfurt, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Frankfurt (FRA)plane MAD - FRA
- Take the train from Frankfurt to Aachen, Hbftrain
8h 55m€132–308Train
- Take the train from Madrid-Puerta de Atocha-Almudena Grandes to Montpellier Saint-Rochtrain
- Take the train from Montpellier Saint-Roch to Luxembourgtrain Tgv
- Take the train from Luxembourg to Trois-Pontstrain Ic
19h 48m€250–382Bus via Lyon
- Take the bus from Madrid to Lyonbus FlixBus N1149
- Take the bus from Lyon to Liège Guilleminsbus N760
30h 14m€126–224
Madrid to Spa by train
Questions & Answers
The cheapest way to get from Madrid to Spa is to fly and train which costs €65 - €210 and takes 8h 56m.
The fastest way to get from Madrid to Spa is to fly and train which takes 6h 59m and costs €75 - €230.
No, there is no direct bus from Madrid to Spa. However, there are services departing from Estación Sur de Autobuses and arriving at SPA Place Royale via Paris - Bercy-Seine Bus Station, LIEGE Gare des Guillemins - Quai C and VERVIERS Gare Centrale - Quai B. The journey, including transfers, takes approximately 25h 40m.
No, there is no direct train from Madrid to Spa. However, there are services departing from Madrid-Puerta de Atocha-Almudena Grandes and arriving at Spa-Géronstère via Barcelona-Sants, Lyon Part Dieu, Bruxelles-Midi and Verviers-Central. The journey, including transfers, takes approximately 16h 34m.
The distance between Madrid and Spa is 1455 km. The road distance is 1604.1 km.
The best way to get from Madrid to Spa without a car is to train via Barcelona which takes 16h 34m and costs €210 - €390.
It takes approximately 6h 59m to get from Madrid to Spa, including transfers.
Madrid to Spa bus services, operated by ALSA, depart from Estación Sur de Autobuses station.
Madrid to Spa train services, operated by Renfe AVE, depart from Madrid-Puerta de Atocha-Almudena Grandes station.
The best way to get from Madrid to Spa is to train via Barcelona which takes 16h 34m and costs €210 - €390. Alternatively, you can bus, which costs €80 - €260 and takes 25h 40m.
What companies run services between Madrid, Spain and Spa, Belgium?
You can take a train from Madrid-Puerta de Atocha-Almudena Grandes to Spa-Géronstère via Barcelona-Sants, Lyon Part Dieu, Bruxelles-Midi, and Verviers-Central in around 16h 34m. Alternatively, you can take a bus from Estación Sur de Autobuses to SPA Place Royale via Paris, Quai de Bercy, Paris - Bercy-Seine Bus Station, Liège, LIEGE Gare des Guillemins - Quai C, and VERVIERS Gare Centrale - Quai B in around 25h 40m.
- Website
- iberia.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Brussels Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €55–130
Flights from Adolfo Suárez Madrid–Barajas Airport to Brussels Airport via Bilbao
- Ave. Duration
- 4h 55m
- When
- Monday and Friday
- Estimated price
- €80–180
Flights from Adolfo Suárez Madrid–Barajas Airport to Düsseldorf International Airport
- Ave. Duration
- 2h 35m
- When
- Every day
- Estimated price
- €70–160
Flights from Adolfo Suárez Madrid–Barajas Airport to Frankfurt
- Ave. Duration
- 2h 45m
- When
- Every day
- Estimated price
- €80–170
- Website
- ryanair.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Brussels Airport
- Ave. Duration
- 2h 30m
- When
- Every day
- Estimated price
- €40–180
Flights from Adolfo Suárez Madrid–Barajas Airport to Brussels South Charleroi Airport
- Ave. Duration
- 2h 20m
- When
- Every day
- Estimated price
- €40–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Luxembourg
- Ave. Duration
- 2h 25m
- When
- Monday, Wednesday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- €40–160
- Website
- vueling.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Brussels Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €55–130
Flights from Adolfo Suárez Madrid–Barajas Airport to Brussels Airport via Bilbao
- Ave. Duration
- 4h 55m
- When
- Monday and Friday
- Estimated price
- €80–180
Flights from Adolfo Suárez Madrid–Barajas Airport to Düsseldorf International Airport
- Ave. Duration
- 2h 35m
- When
- Every day
- Estimated price
- €70–160
Flights from Adolfo Suárez Madrid–Barajas Airport to Frankfurt
- Ave. Duration
- 2h 45m
- When
- Every day
- Estimated price
- €80–170
- Website
- lufthansa.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Düsseldorf International Airport via Frankfurt
- Ave. Duration
- 4h 46m
- When
- Every day
- Estimated price
- €75–300
Flights from Adolfo Suárez Madrid–Barajas Airport to Frankfurt
- Ave. Duration
- 2h 35m
- When
- Every day
- Estimated price
- €80–370
- Website
- airfrance.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Düsseldorf International Airport via Paris Charles de Gaulle
- Ave. Duration
- 4h 56m
- When
- Every day
- Estimated price
- €50–280
Flights from Adolfo Suárez Madrid–Barajas Airport to Luxembourg via Paris Charles de Gaulle
- Ave. Duration
- 5h 2m
- When
- Every day
- Estimated price
- €55–300
- Website
- aireuropa.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Brussels Airport
- Ave. Duration
- 2h 30m
- When
- Every day
- Estimated price
- €50–160
Flights from Adolfo Suárez Madrid–Barajas Airport to Frankfurt
- Ave. Duration
- 2h 40m
- When
- Every day
- Estimated price
- €55–180
- Website
- brusselsairlines.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Brussels Airport
- Ave. Duration
- 2h 23m
- When
- Every day
- Estimated price
- €65–200
- Website
- klm.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Düsseldorf International Airport via Amsterdam Schiphol
- Ave. Duration
- 5h 1m
- When
- Every day
- Estimated price
- €55–300
- Website
- easyjet.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Brussels Airport via Geneva
- Ave. Duration
- 4h 10m
- When
- Monday, Friday, and Sunday
- Estimated price
- €70–220
- Website
- eurowings.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Düsseldorf International Airport
- Ave. Duration
- 2h 35m
- When
- Sunday
- Estimated price
- €65–190
- Website
- luxair.lu
Flights from Adolfo Suárez Madrid–Barajas Airport to Luxembourg
- Ave. Duration
- 2h 15m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €65–160
- Phone
- +32 70 79 79 79
- Website
- belgiantrain.be
Train from Louvain to Verviers-Central
- Ave. Duration
- 53 min
- Frequency
- Every 30 minutes
- Estimated price
- €10–15
- Website
- https://www.belgiantrain.be/en
- 2nd Class
- €10–15
- 1st Class
- €15–22
Train from Bruxelles-Midi to Verviers-Central
- Ave. Duration
- 1h 24m
- Frequency
- Every 30 minutes
- Estimated price
- €12–18
- Website
- https://www.belgiantrain.be/en
- 2nd Class
- €12–18
- 1st Class
- €19–28
Train from Pfaffenthal-Kirchberg to Trois-Ponts
- Ave. Duration
- 1h 41m
- Frequency
- Hourly
- Estimated price
- €10–15
- Website
- https://www.belgiantrain.be/en
- 2nd Class
- €10–15
- 1st Class
- €15–23
Train from Luxembourg to Trois-Ponts
- Ave. Duration
- 1h 45m
- Frequency
- Hourly
- Estimated price
- €10–15
- Website
- https://www.belgiantrain.be/en
- 2nd Class
- €10–15
- 1st Class
- €16–23
Rome2Rio's guide to Renfe AVE
Contact Details
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 2m
- Frequency
- Hourly
- Estimated price
- €50–75
- Website
- https://www.renfe.com/es/en
- Básico
- €50–75
- Phone
- +34 900 926 851
- atencion.cliente@iryo.eu
- Website
- iryo.eu
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 20m
- Frequency
- Hourly
- Estimated price
- €27–85
- Website
- https://iryo.eu/en/home
- Inicial
- €27–85
- Phone
- +34 910 780 990
- Website
- ouigo.com
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 28m
- Frequency
- 5 times a day
- Estimated price
- €25–80
- Website
- https://www.ouigo.com/es/en
Rome2Rio's guide to Renfe Viajeros
Contact 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
- Twice daily
- Estimated price
- €45–65
- Website
- https://www.renfe.com/es/en
Train from Barcelona-Sants to Lyon Part Dieu
- Ave. Duration
- 5h 6m
- Frequency
- Once daily
- Estimated price
- €50–75
- Website
- https://www.renfe.com/es/en
Train from Madrid-Puerta de Atocha-Almudena Grandes to Montpellier Saint-Roch
- Ave. Duration
- 6h 55m
- Frequency
- Once daily
- Estimated price
- €75–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 56m
- Frequency
- Every 4 hours
- Estimated price
- €120–200
- Website
- https://www.sncf-connect.com/en-en
- 2nd Class
- €120–160
- 1st Class
- €150–200
Train from Montpellier Saint-Roch to Luxembourg
- Ave. Duration
- 7h 46m
- Frequency
- Once daily
- Estimated price
- €160–260
- Website
- https://www.sncf-connect.com/en-en
- 2nd Class
- €160–210
- 1st Class
- €200–260
- Phone
- 0221 13 999 444
- Website
- nationalexpress.de
Train from Duesseldorf Hbf to Aachen Hbf
- Ave. Duration
- 1h 27m
- Frequency
- Every 30 minutes
- Estimated price
- €19–28
- Schedules at
- nationalexpress.de
- Phone
- +44 343 218 6186
- Website
- eurostar.com
Train from Duesseldorf Hbf to Aachen Hbf
- Ave. Duration
- 1h 6m
- Frequency
- 3 times a day
- Estimated price
- €35–80
- Website
- https://www.eurostar.com/rw-en
- Standard
- €35–55
- Comfort
- €40–55
- Premium
- €60–80
- Phone
- +49 30 311 682904
- Website
- bahn.de
Train from Duesseldorf Hbf to Aachen Hbf
- Ave. Duration
- 1h 25m
- Frequency
- Twice daily
- Estimated price
- €31–35
- Website
- https://int.bahn.de/en
Train from Frankfurt to Aachen, Hbf
- Ave. Duration
- 1h 26m
- Frequency
- Every 4 hours
- Estimated price
- €47–52
- Website
- https://int.bahn.de/en
- Phone
- +34 910 207 007
- alsa@alsa.es
- Website
- alsa.com
Bus from Estación Sur de Autobuses to Paris, Quai de Bercy
- Ave. Duration
- 15h 30m
- Frequency
- Twice daily
- Estimated price
- €45–210
- Website
- https://www.alsa.com/en/
- Phone
- +3-389-268-0068
- Website
- blablacar.co.uk
Bus from Estación Sur de Autobuses to Paris, Quai de Bercy
- Ave. Duration
- 16h 40m
- Frequency
- Once daily
- Estimated price
- €75–110
- Website
- https://www.blablacar.co.uk/bus
Bus from Paris - Bercy-Seine Bus Station to Liège
- Ave. Duration
- 6h 5m
- Frequency
- Twice daily
- Estimated price
- €30–50
- Website
- https://www.blablacar.co.uk/bus
- info@flibco.com
- Website
- flibco.com
Bus from Charleroi Airport to Liège Rue du Plan Inclined
- Ave. Duration
- 1h 5m
- Frequency
- Every 3 hours
- Estimated price
- €12–17
- Website
- https://www.flibco.com/en
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Madrid to Lyon
- Ave. Duration
- 18h 15m
- Frequency
- Once daily
- Estimated price
- €75–140
- Website
- https://www.flixbus.co.uk
Bus from Lyon to Liège Guillemins
- Ave. Duration
- 9h 40m
- Frequency
- 5 times a week
- Estimated price
- €40–75
- Website
- https://www.flixbus.co.uk
Want to know more about travelling around Belgium
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 Spa bus services, operated by ALSA, arrive at Paris, Quai de Bercy station.
Madrid to Spa train services, operated by Renfe AVE, arrive at Barcelona-Sants station.
Yes, the driving distance between Madrid to Spa is 1604 km. It takes approximately 16h 26m to drive from Madrid to Spa.
There are 1663+ hotels available in Spa.
























































