There are 7 ways to get from Porto to Madrid (Station) by plane, bus, train, or car
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly from Francisco De Sá Carneiro Airport
best- Fly from Francisco De Sá Carneiro Airport (OPO) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane OPO - MAD
4h 20m€34–177Bus
- Take the bus from Porto - Terminal Intermodal de Campanhã to Estación Sur de Autobusesbus BlaBlaCar Bus
7h 15m€38–89Bus, train
- Take the bus from Porto - Terminal Intermodal de Campanhã to Vigo - Bus Stationbus BlaBlaCar Bus
- Take the train from Vigo Urzaiz to Madrid Chamartíntrain Ave
7h 27m€93–199Drive 552.6 km
- Drive from Porto to Madrid (Station)car 552.6 km
5h 39m€88–127Train to Vigo, fly
- Take the train from Porto Campanha to Vigo Guixartrain
- Fly from Vigo (VGO) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane VGO - MAD
6h 27m€66–220Bus, train via Salamanca
- Take the bus from Porto - Terminal Intermodal de Campanhã to Salamancabus BlaBlaCar Bus
- Take the train from Salamanca to Madrid-Principe Piotrain 18900 / ...
8h 10m€61–100Bus via Porto
- Take the bus from Porto to Madridbus FlixBus N795B
8h 55m€56–93
Porto to Madrid (Station) by bus and foot
Questions & Answers
The cheapest way to get from Porto to Madrid (Station) is to bus which costs €35 - €90 and takes 7h 15m.
The fastest way to get from Porto to Madrid (Station) is to fly which takes 4h 20m and costs €30 - €180.
No, there is no direct bus from Porto to Madrid (Station). However, there are services departing from Porto - Terminal Intermodal de Campanhã and arriving at Avenida América via Méndez Álvaro. The journey, including transfers, takes approximately 7h 15m.
The distance between Porto and Madrid (Station) is 466 km. The road distance is 552.6 km.
The best way to get from Porto to Madrid (Station) without a car is to bus which takes 7h 15m and costs €35 - €90.
It takes approximately 4h 20m to get from Porto to Madrid (Station), including transfers.
Porto to Madrid (Station) bus services, operated by BlaBlaCar Bus, depart from Porto - Terminal Intermodal de Campanhã station.
The best way to get from Porto to Madrid (Station) is to fly which takes 4h 20m and costs €30 - €180. Alternatively, you can bus, which costs €35 - €90 and takes 7h 15m.
Porto to Madrid (Station) bus services, operated by BlaBlaCar Bus, arrive at Estación Sur de Autobuses station.
Madrid (Station) is 1h ahead of Porto. It is currently 10:05 PM in Porto and 11:05 PM in Madrid (Station).
What companies run services between Porto, Portugal and Madrid (Station), Madrid, Spain?
Iberia, Ryanair, and three other airlines fly from Francisco De Sá Carneiro Airport (OPO) to Adolfo Suárez Madrid–Barajas Airport (MAD) every 2 hours. Alternatively, BlaBlaCar Bus operates a bus from Porto - Terminal Intermodal de Campanhã to Estación Sur de Autobuses twice daily. Tickets cost €45–90 and the journey takes 6h 40m. Gipsyy Portugal also services this route twice daily.
- Website
- iberia.com
Flights from Francisco De Sá Carneiro Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 20m
- When
- Every day
- Estimated price
- €27–130
Flights from Vigo to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- €35–140
- Website
- aireuropa.com
Flights from Francisco De Sá Carneiro Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- €29–180
Flights from Vigo to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- €40–180
- Website
- ryanair.com
Flights from Francisco De Sá Carneiro Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 14m
- When
- Every day
- Estimated price
- €29–160
- Website
- flytap.com
Flights from Francisco De Sá Carneiro Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 15m
- When
- Monday, Tuesday, Thursday, and Saturday
- Estimated price
- €75–260
Flights from Francisco De Sá Carneiro Airport to Adolfo Suárez Madrid–Barajas Airport via Lisboa
- Ave. Duration
- 3h 12m
- When
- Sunday, Monday, Tuesday, Thursday, and Saturday
- Estimated price
- €40–150
- Website
- ethiopianairlines.com
Flights from Francisco De Sá Carneiro Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 15m
- When
- Monday, Tuesday, Thursday, and Saturday
- Estimated price
- €75–260
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Vigo Urzaiz to Madrid Chamartín
- Ave. Duration
- 3h 55m
- Frequency
- 5 times a day
- Estimated price
- €95–170
- Website
- https://www.renfe.com/es/en
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Vigo Urzaiz to Madrid Chamartín
- Ave. Duration
- 4h 24m
- Frequency
- Twice daily
- Estimated price
- €80–130
- Website
- https://www.renfe.com/es/en
Train from Porto Campanha to Vigo Guixar
- Ave. Duration
- 2h 30m
- Frequency
- 4 times a day
- Estimated price
- €21–35
- Website
- https://www.renfe.com/es/en
Train from Salamanca to Madrid-Principe Pio
- Ave. Duration
- 2h 42m
- Frequency
- Hourly
- Estimated price
- €29–45
- Website
- https://www.renfe.com/es/en
- Phone
- +3 318 576 2228
- Website
- blablacar.co.uk
Bus from Porto - Terminal Intermodal de Campanhã to Estación Sur de Autobuses
- Ave. Duration
- 6h 40m
- Frequency
- Twice daily
- Estimated price
- €45–90
- Website
- https://www.blablacar.co.uk/bus
Bus from Porto - Terminal Intermodal de Campanhã to Vigo - Bus Station
- Ave. Duration
- 2h 10m
- Frequency
- Every 4 hours
- Estimated price
- €13–24
- Website
- https://www.blablacar.co.uk/bus
Bus from Porto - Terminal Intermodal de Campanhã to Salamanca
- Ave. Duration
- 3h 35m
- Frequency
- Twice daily
- Estimated price
- €30–55
- Website
- https://www.blablacar.co.uk/bus
- [email protected]
- Website
- gipsyy.com
Bus from Porto - Terminal Intermodal de Campanhã to Estación Sur de Autobuses
- Ave. Duration
- 7h 30m
- Frequency
- Twice daily
- Estimated price
- €35–75
- Schedules at
- gipsyy.com
- Phone
- +351 21 75 24 524
- Website
- rede-expressos.pt
Bus from Porto - Terminal Intermodal de Campanhã to Vigo - Bus Station
- Ave. Duration
- 2h 45m
- Frequency
- 5 times a day
- Estimated price
- €11–26
- Website
- https://rede-expressos.pt/en
Rome2Rio's guide to FlixBus
Contact DetailsContact Details
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- https://www.flixbus.fr
Bus from Porto to Madrid
- Ave. Duration
- 8h 20m
- Frequency
- Twice daily
- Estimated price
- €55–90
- Website
- https://www.flixbus.co.uk
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
Read the travel guide
What are the different types of Renfe trains in Spain?
Read the travel guide
Want to know more about Flixbus?
Read the travel guide
More Questions & Answers
Yes, the driving distance between Porto to Madrid (Station) is 553 km. It takes approximately 5h 39m to drive from Porto to Madrid (Station).
There are 7050+ hotels available in Madrid (Station).

























