There are 7 ways to get from Porto to Madrid by train, night bus, rideshare, car, plane or towncar
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2rio's travel planner.
Recommended
Train
-
Take the train from Porto - Campanha to Vigo Guixar
-
Take the train from Vigo Urzaiz to Madrid-Chamartin
Night bus
-
Take the night bus from Porto to Madrid
Rideshare
-
Take the rideshare from Porto to Madrid
Drive
-
Drive from Porto to Madrid
Train to Vigo, fly
-
Take the train from Porto - Campanha to Vigo Guixar
-
Fly from Vigo (VGO) to Madrid (MAD)
Towncar
-
Take a town car from Porto Airport to Madrid
Porto to Madrid by train and walk
Questions & Answers
The cheapest way to get from Porto to Madrid is to night bus which costs €30 - €40 and takes 8h 20m.
The quickest way to get from Porto to Madrid is to fly which costs €24 - €130 and takes 4h 13m.
Yes, there is an overnight bus departing from Porto and arriving at Madrid. This bus operates every day. The journey takes approximately 8h 20m.
No, there is no direct train from Porto to Madrid. However, there are services departing from Porto - Campanha and arriving at Sol via Vigo Urzaiz and Chamartin. The journey, including transfers, takes approximately 8h 12m.
The distance between Porto and Madrid is 421 km. The road distance is 560.9 km.
The best way to get from Porto to Madrid without a car is to train which takes 8h 12m and costs €50 - €75.
It takes approximately 8h 12m to get from Porto to Madrid, including transfers.
Porto to Madrid bus services, operated by FlixBus, depart from Porto station.
Porto to Madrid train services, operated by Renfe Viajeros, depart from Porto - Campanha station.
The best way to get from Porto to Madrid is to train which takes 8h 12m and costs €50 - €75. Alternatively, you can fly, which costs €24 - €130 and takes 4h 13m.

- Distance: 421.2 km
- Duration: 8h 12m
What companies run services between Porto, Portugal and Madrid, Spain?
You can take a train from Porto to Madrid via Vigo Guixar, Vigo Urzaiz, Madrid-Chamartin, and Chamartin in around 8h 12m. Alternatively, FlixBus operates a vehicle from Porto to Madrid once daily. Tickets cost €30 - €40 and the journey takes 8h 20m.

- Website
- iberia.com
Flights from Porto to Madrid
- Ave. Duration
- 1h 20m
- When
- Every day
- Estimated price
- €30 - €200
Flights from Vigo to Madrid
- Ave. Duration
- 1h 18m
- When
- Every day
- Estimated price
- €40 - €210

- Website
- aireuropa.com
Flights from Porto to Madrid
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- €28 - €180
Flights from Vigo to Madrid
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- €27 - €180

- Website
- ryanair.com
Flights from Porto to Madrid
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- €15 - €130

- Website
- easyjet.com
Flights from Porto to Madrid
- Ave. Duration
- 1h 20m
- When
- Monday, Thursday, Friday, Saturday and Sunday
- Estimated price
- €17 - €150

- Website
- flytap.com
Flights from Porto to Madrid via Lisbon
- Ave. Duration
- 3h 20m
- When
- Monday, Tuesday, Wednesday and Sunday
- Estimated price
- €35 - €220

Spain's excellent and extensive rail system connects cities across Spain and into neighbouring countries. Renfe's high-speed AVE trains can reach speeds of up to 350km/h, making travel between major cities very efficient. All medium- and long-distance trains require a seat reservation; ticket sales for these trains usually open 30-60 days before travel. Most Renfe trains have two classes: Turista (2nd class) and Preferente (1st class), although some AVE trains offer Turista Plus. There is free WiFi for Preferente passengers and for those with a +Renfe loyalty card.
Rome2rio's guide to Renfe Viajeros
Contact Details
- Phone
- +34 91 232 03 20
- comunicacion@renfe.es
- Website
- renfe.com
Train from Porto - Campanha to Vigo Guixar
- Ave. Duration
- 2h 22m
- Frequency
- Twice daily
- Estimated price
- €14 - €18
- Website
- Renfe Viajeros
Train from Vigo Urzaiz to Madrid-Chamartin
- Ave. Duration
- 4h 16m
- Frequency
- 4 times a day
- Estimated price
- €35 - €50
- Website
- Renfe Viajeros

One of Europe’s leading bus companies, Flixbus serves 2000+ destinations in 29 countries, including Germany, France, Italy, Austria, the Netherlands and Croatia and into Scandinavia and eastern Europe, as well as some US cities. Coaches have toilets, free WiFi and power outlets, plus snacks and drinks for purchase on board. Flixbus is a good choice for the budget-conscious traveller; purchase tickets in advance for the cheapest fares (note: there is no option to reserve a seat in advance).
Rome2rio's guide to FlixBus
Contact Details
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.de
Night bus from Porto to Madrid
- Ave. Duration
- 8h 20m
- Frequency
- Once daily
- Estimated price
- €30 - €40
- Website
- flixbus.co.uk
Frequently asked questions

Blablacar is a popular ridesharing platform with 70 million users over 22 (mostly European) countries. The basic idea is that you carpool with locals who are already planning to drive your route and have space in their car. With some flexibility, you’ll get to your destination often faster and cheaper than other means. On the website or app, enter your departure and arrival points and your date of travel, sift through the profiles of drivers who’ve posted pre-planned drives and find one whose timing and preferences match yours. Request to join the ride, wait to be accepted, and pay your share of the set price.
Rome2rio's guide to BlaBlaCar
Contact Details
- Website
- blablacar.com
Rideshare from Porto to Madrid
- Ave. Duration
- 6h 14m
- Frequency
- 3 times a week
- Estimated price
- €25 - €45
- Book at
- blablacar.co.uk

- Phone
- (+351) 220971653
- info@vmtransfers.com
- Website
- vmtransfers.com
Towncar from Porto Airport to Madrid
- Ave. Duration
- 6h 35m
- Frequency
- On demand
- Estimated price
- €500 - €650
- More information at
- VMTransfers
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
Train travel in Spain: A guide to Renfe
Top tips on how to best navigate the nation by train, from Alicante to Zaragoza
Read the travel guideWhat are the different types of Renfe trains in Spain?
A simple guide to the different trains, routes and facilities, so you can identify which service is right for you.
Read the travel guideWant to know more about Flixbus?
Rome2rio’s guide has all the details
Read the travel guideIs ride-sharing platform BlaBlaCar right for you?
Don't have a car, or can't get there on public transportation? This carpooling platform could be your answer.
Read the travel guideMore Questions & Answers
The quickest flight from Porto Airport to Madrid Airport is the direct flight which takes 1h 10m.
Porto to Madrid bus services, operated by FlixBus, arrive at Madrid station.
Madrid is 1h ahead of Porto. It is currently 5:36 PM in Porto and 6:36 PM in Madrid.
Porto to Madrid train services, operated by Renfe Viajeros, arrive at Madrid-Chamartin station.
Yes, the driving distance between Porto to Madrid is 561 km. It takes approximately 5h 25m to drive from Porto to Madrid.
easyJet, Ryanair, TAP Portugal and two other airlines offer flights from Porto Airport to Madrid Airport.
Book your Porto to Madrid bus tickets online with FlixBus.
There are 798+ hotels available in Madrid. Prices start at €87 per night.
The best way to get from Porto to Porto Airport is to subway which takes 27 min and costs €1 - €2.