There are 7 ways to get from Madrid to Porto by plane, car, train, bus, towncar or night bus
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2rio's travel planner.
Recommended option
Fly to Porto
-
Fly from Madrid (MAD) to Porto (OPO)
6 alternative options
Fly to Vigo, drive
-
Fly from Madrid (MAD) to Vigo (VGO)
-
Drive from Vigo to Porto
Train, bus, towncar
-
Take the train from Madrid-Chamartin to Zamora
-
Take the bus from Zamora to Bragança
-
Take a town car from Bragança to Porto Airport
Train
-
Take the train from Madrid-Chamartin to Vigo Urzaiz
-
Take the train from Vigo Guixar to Porto - Campanha
Night bus
-
Take the night bus from Madrid to Porto
Drive
-
Drive from Madrid to Porto
Towncar
-
Take a town car from Madrid to Porto Airport
Madrid to Porto by train and walk
Travel safe during COVID-19
International entry into Portugal from Spain
- Entry is fully open for citizens and permanent residents of Spain
Conditions of entry into Portugal from Spain
- There are no current restrictions
Rules to follow in Portugal
2m
Mandatory
Considerations leaving from Spain
The official advice is to delay international travel until fully vaccinated
Frequently Asked Questions
Yes, entry into Portugal is currently allowed from Spain.
Explore travel optionsDomestic travel is not restricted, but some conditions may apply
- Face masks are mandatory
- There is a social distancing requirement of 2 metres
- Observe COVID-19 safety rules
The national COVID-19 helpline number in Porto is 808 24 24 24.
Wearing a face mask on public transport in Porto is mandatory.
The social distance requirement in Porto is 2 metres.
Make yourself known to an official member of staff and/or call the national coronavirus helpline number on 808 24 24 24.
No, returning to Spain from Portugal is currently allowed.
See options for return travel.
Last updated: 28 Jul 2022
Exceptions may apply, for full details: European Union.
We're working around the clock to bring you the latest COVID-19 travel updates.
This information is compiled from official sources. To the best of our knowledge, it is correct as of the last update.
Visit Rome2rio travel advice for general help.
Questions & Answers
The cheapest way to get from Madrid to Porto is to night bus which costs €30 - €40 and takes 8h 10m.
The fastest way to get from Madrid to Porto is to fly and drive which takes 4h and costs €60 - €230.
Yes, there is an overnight bus departing from Madrid and arriving at Porto. This bus operates every day. The journey takes approximately 8h 10m.
No, there is no direct train from Madrid to Porto. However, there are services departing from Sol and arriving at Porto - Campanha via Madrid-Chamartin and Vigo Guixar. The journey, including transfers, takes approximately 9h 1m.
The distance between Madrid and Porto is 421 km. The road distance is 559.6 km.
The best way to get from Madrid to Porto without a car is to train and bus and towncar which takes 8h 18m and costs €230 - €380.
It takes approximately 4h 30m to get from Madrid to Porto, including transfers.
Madrid to Porto bus services, operated by FlixBus, depart from Madrid station.
Madrid to Porto train services, operated by Renfe Viajeros, depart from Madrid-Chamartin station.
The best way to get from Madrid to Porto is to fly which takes 4h 30m and costs €26 - €160. Alternatively, you can train, which costs €50 - €75 and takes 9h 1m.
- Distance: 421.2 km
- Duration: 4h 30m
What companies run services between Madrid, Spain and Porto, Portugal?
Iberia, Ryanair and three other airlines fly from Madrid to Porto hourly. Alternatively, you can take a train from Madrid to Porto via Chamartin, Madrid-Chamartin, Vigo Urzaiz, and Vigo Guixar in around 9h 1m.
- Website
- iberia.com
Flights from Madrid to Porto
- Ave. Duration
- 1h 17m
- When
- Every day
- Estimated price
- €30 - €230
Flights from Madrid to Vigo
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- €35 - €260
- Website
- aireuropa.com
Flights from Madrid to Porto
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- €30 - €180
Flights from Madrid to Vigo
- Ave. Duration
- 1h 5m
- When
- Every day
- Estimated price
- €30 - €220
- Website
- flytap.com
Flights from Madrid to Porto via Lisbon
- Ave. Duration
- 3h 21m
- When
- Every day
- Estimated price
- €35 - €390
- Website
- ryanair.com
Flights from Madrid to Porto
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- €18 - €150
- Website
- easyjet.com
Flights from Madrid to Porto
- Ave. Duration
- 1h 20m
- When
- Monday, Thursday, Friday, Saturday and Sunday
- Estimated price
- €23 - €150
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 Madrid-Chamartin to Zamora
- Ave. Duration
- 1h 23m
- Frequency
- Every 3 hours
- Estimated price
- €17 - €22
- Website
- Renfe Viajeros
Train from Madrid-Chamartin to Vigo Urzaiz
- Ave. Duration
- 4h 12m
- Frequency
- 4 times a day
- Estimated price
- €35 - €50
- Website
- Renfe Viajeros
Train from Vigo Guixar to Porto - Campanha
- Ave. Duration
- 2h 22m
- Frequency
- Twice daily
- Estimated price
- €14 - €18
- Website
- Renfe Viajeros
Rome2rio's guide to Renfe AVE
Contact Details
- Phone
- +34 91 232 03 20
- comunicacion@renfe.es
- Website
- renfe.com
Train from Madrid-Chamartin to Zamora
- Ave. Duration
- 1h 4m
- Frequency
- Twice daily
- Estimated price
- €23 - €55
- Website
- Renfe AVE
- Promo
- €23 - €30
- Promo+
- €29 - €31
- Flexible
- €40 - €55
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
Bus from Zamora to Bragança
- Ave. Duration
- 1h 20m
- Frequency
- Twice daily
- Estimated price
- €8 - €10
- Website
- flixbus.co.uk
Night bus from Madrid to Porto
- Ave. Duration
- 8h 10m
- Frequency
- Once daily
- Estimated price
- €30 - €40
- Website
- flixbus.co.uk
Frequently asked questions
- Phone
- +376 806 555
- cooperativa@interurbana.ad
- Website
- interurbana.ad
Bus from Zamora Bus Station to Braganca Rua da Estacao
- Ave. Duration
- 1h 30m
- Frequency
- Twice daily
- Website
- Cooperativa Interurbana Andorrana
- Phone
- (+351) 253 267 730
- Website
- iberocoach.com
Bus from Zamora to Bragança
- Ave. Duration
- 1h 30m
- Frequency
- Twice daily
- Estimated price
- €50 - €70
- Website
- iberocoach.com
- Phone
- (+351) 220971653
- info@vmtransfers.com
- Website
- vmtransfers.com
Towncar from Bragança to Porto Airport
- Ave. Duration
- 2h 10m
- Frequency
- On demand
- Estimated price
- €200 - €240
- More information at
- VMTransfers
Towncar from Madrid to Porto Airport
- Ave. Duration
- 6h 35m
- Frequency
- On demand
- Estimated price
- €500 - €650
- More information at
- VMTransfers
Want to know more about travelling around Portugal
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 guideMore Questions & Answers
The quickest flight from Madrid Airport to Porto Airport is the direct flight which takes 1h 15m.
Madrid to Porto bus services, operated by FlixBus, arrive at Porto station.
Porto is 1h behind Madrid. It is currently 11:32 in Madrid and 10:32 in Porto.
Madrid to Porto train services, operated by Renfe Viajeros, arrive at Porto - Campanha station.
Yes, the driving distance between Madrid to Porto is 560 km. It takes approximately 5h 25m to drive from Madrid to Porto.
easyJet, Ryanair, Air Europa and two other airlines offer flights from Madrid Airport to Porto Airport.
Book your Madrid to Porto bus tickets online with FlixBus.
There are 3585+ hotels available in Porto. Prices start at €100 per night.