Travel Information to Brussels from Madrid
| 1316 km | |
| Train, coach or flight | |
| €35 - €417 | |
| Flight • €35 • 2 h 20 min | |
| Flight • €35 • 2 h 20 min | |
| BlaBlaCar Bus, Ryanair or iryo |
Travel 1316 km by train, coach or flight between Madrid and Brussels. The most popular travel providers which serve this trip are BlaBlaCar Bus, Ryanair or iryo among others. Travellers can even take a direct coach, flight or train from Madrid to Brussels.
Travel optionsfrom Madrid to Brussels
How to get from Madrid to Brussels by train, bus or flight.
Our recommendation
The best way to travel from Madrid to Brussels is by taking a bus because it’s the best combination of price and speed.
3162 · 50321Cheapest
3162 · 50321Fastest
FR 5462Other options
3160 · 50100
4004 · 1657
FlixBus · FlixBus
IB603
FR 2948
IB737+
9394Find all the dates and times for this journey by train, bus, flight, and ferry .
Compare prices and tickets Prices for trains, buses and flights
Compare train, bus, and flight prices over the next three weeks. See the best deals at a glance, find the lowest fares, and choose the option that fits your budget.
Dec 25
Dec 26
Dec 27
Dec 28
Dec 29
Dec 30
Dec 31
Jan 01
Jan 02
Jan 03
Jan 04
Jan 05
Jan 06
Jan 07
Jan 08
Jan 09
Jan 10
Jan 11
Jan 12
Jan 13
Jan 14
More than 1,000 travel companies trust us to sell their tickets all in one place.
FAQs: Travel from Madrid to Brussels
Travel to Brussels easily. Whether you want fast, cheap or something entirely different, our travel experts have collected everything you need to know so you can find the best option from Madrid to Brussels.

There are 3 ways to get from Madrid to Brussels: train, coach or flight.
The cheapest way to travel from Madrid to Brussels is a flight with an average price of €35.
This is compared to other travel options from Madrid to Brussels:
Taking a flight costs €10 less than taking a coach, which average ticket prices of €45.
Taking a flight costs €382 less than taking a train, which costs on average €417 for the same trip.
The fastest way to get to Brussels from Madrid is by flight with an average travel time of 2 h 20 min.
Other travel options to Brussels take longer:
Taking a coach requires on average 20 h 55 min of travel time.
Getting to Brussels by train takes 11 h 37 min on average.
You should expect to travel around 1316 km from Madrid to Brussels.
The average frequency per day from Madrid to Brussels is:
- 17 coaches per day.
- Around 42 flights per day.
- 1 train per day.
However, we recommend checking specific travel dates for your route between Madrid and Brussels as scheduled services by train, coach or flight can vary by season or day of the week.
These are the most popular departure and arrival points when travelling from Madrid to Brussels:
- Most travellers take a flight from Madrid Barajas Airport to Brussels Airport.
Omio works with many trusted partners that can help you travel the best way from Madrid to Brussels:
- You can take a coach from Madrid to Brussels with BlaBlaCar Bus, FlixBus, Alsa or Empresa Municipal de Transportes. Cheap tickets can be found for €45 with BlaBlaCar Bus from Madrid to Brussels.
- You can travel by plane to Brussels from Madrid with Ryanair, Iberia, Brussels Airlines, Air Europa, Vueling Airlines, KLM, TAP Portugal, Alitalia, PGA-Portugalia Airlines or Air One, and you can find Ryanair Madrid to Brussels tickets for €35 on Omio.
- You can take a train from Madrid to Brussels with iryo, AVE or Renfe Viajeros. Cheap tickets can be found for €417 with Renfe Viajeros from Madrid to Brussels.
Yes, there are direct routes from Madrid to Brussels with the following travel companies:
- You can find 7 direct flights per day to Brussels with Ryanair, Iberia, Brussels Airlines or Air Europa.
Direct services to Brussels tend to save you time and add more convenience as you won't need to transfer at another stop in between, so it's worth paying attention to before booking tickets for your trip.
Travelling from Madrid to Brussels: related information
Here are some other resources that might have the information you need
