Travel from Portugal to Spain is: Partially open. See details.
Rome2rio uses cookies to help personalize content and show you personalised ads. By proceeding, you accept the use of cookies in accordance with our privacy policy. You may opt out of personalised ads at any time. OK

Need a hotel room in Madrid?

Book now

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

  1. Take the train from Porto - Campanha to Vigo Guixar
  2. Take the train from Vigo Urzaiz to Madrid-Chamartin

Cheapest

Fly from Porto

  1. Fly from Porto (OPO) to Madrid (MAD)

Night bus

  1. Take the night bus from Porto to Madrid

Rideshare

  1. Take the rideshare from Porto to Madrid

Drive

  1. Drive from Porto to Madrid

Train to Vigo, fly

  1. Take the train from Porto - Campanha to Vigo Guixar
  2. Fly from Vigo (VGO) to Madrid (MAD)

Towncar

  1. Take a town car from Porto Airport to Madrid

Porto to Madrid by train and walk

14 Weekly Services
8h 12m Average Duration
€54 Cheapest Price
See schedules

Questions & Answers

The cheapest way to get from Porto to Madrid is to night bus which costs €30 - €40 and takes 8h 20m.

More details

The quickest way to get from Porto to Madrid is to fly which costs €24 - €130 and takes 4h 13m.

More details

Yes, there is an overnight bus departing from Porto and arriving at Madrid. This bus operates every day. The journey takes approximately 8h 20m.

More details

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.

More details

The distance between Porto and Madrid is 421 km. The road distance is 560.9 km.

Get driving directions

The best way to get from Porto to Madrid without a car is to train which takes 8h 12m and costs €50 - €75.

More details

It takes approximately 8h 12m to get from Porto to Madrid, including transfers.

More details

Porto to Madrid bus services, operated by FlixBus, depart from Porto station.

More details

Porto to Madrid train services, operated by Renfe Viajeros, depart from Porto - Campanha station.

More details

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.

Mode details

Map of how to get from Porto to Madrid.
Launch map view
  • 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.

Airlines
Iberia
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
Air Europa
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
Ryanair
Website
ryanair.com
Flights from Porto to Madrid
Ave. Duration
1h 10m
When
Every day
Estimated price
€15 - €130
easyJet
Website
easyjet.com
Flights from Porto to Madrid
Ave. Duration
1h 20m
When
Monday, Thursday, Friday, Saturday and Sunday
Estimated price
€17 - €150
TAP Portugal
Website
flytap.com
Flights from Porto to Madrid via Lisbon
Ave. Duration
3h 20m
When
Monday, Tuesday, Wednesday and Sunday
Estimated price
€35 - €220
Train operators
Renfe Viajeros

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
Email
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
Bus operators
FlixBus

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
Email
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
Is there Wi-Fi on FlixBus?
Yes - FlixBus offers free Wi-Fi
Are there power outlets on FlixBus?
Yes
Does FlixBus offer meals or snacks?
Yes - snacks and drinks may be purchased from the driver. Please note, this is not available on all services.
For more information, please visit this page
Other operators
BlaBlaCar

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
VMTransfers
Phone
(+351) 220971653
Email
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.

More Questions & Answers

The quickest flight from Porto Airport to Madrid Airport is the direct flight which takes 1h 10m.

Search flights

Porto to Madrid bus services, operated by FlixBus, arrive at Madrid station.

More details

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.

More details

Yes, the driving distance between Porto to Madrid is 561 km. It takes approximately 5h 25m to drive from Porto to Madrid.

Get driving directions

easyJet, Ryanair, TAP Portugal and two other airlines offer flights from Porto Airport to Madrid Airport.

Search flights

Book your Porto to Madrid bus tickets online with FlixBus.

Search and book

There are 798+ hotels available in Madrid. Prices start at €87 per night.

More details

Check out Blablacar's carpooling service for rideshare options between Porto and Madrid. A great option if you don't have a driver's licence or want to avoid public transport.

Read Rome2rio's guide to Blablacar

The best way to get from Porto to Porto Airport is to subway which takes 27 min and costs €1 - €2.

More details

ticket