• Our partners include:

  • RailEurope
  • Deutsche Bahn
  • Trenitalia
  • SNCF
  • Flixbus
  • RENFE
  • Ouibus
  • BlaBlaCar
  • Booking.com
  • Skyscanner

There are 9 ways to get from Porto to Madrid by bus, train, night bus, night train, rideshare, car or plane

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

Bus, train  •  7h 13m

  1. Take the bus from Porto - Campo 24 de Agosto - Enfrente ao Pingo Doce to Zamora - Estación de Autobuses
  2. Take the train from Zamora to Madrid-Chamartin A / ...

$109 - $135

Cheapest option

Fly from Porto  •  4h 21m

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

$24 - $145

7 alternative options

Bus  •  7h 15m

  1. Take the bus from Oporto to Madrid

$35 - $75

Train  •  10h 6m

  1. Take the train from Porto(Campanha) to Vigo-Guixar Ic
  2. Take the train from Vigo-Guixar to Madrid-Chamartin A

$86 - $118

Night bus  •  8h 56m

  1. Take the night bus from Porto, Porto to Madrid N795

$38 - $64

Bus, night train  •  11h 11m

  1. Take the bus from Porto to Vilar Formoso Centro
  2. Take the night train from Vilar Formoso to Madrid-Chamartin Hot / ...

$69 - $99

Rideshare  •  6h 14m

  1. Take the rideshare from Porto to Madrid 351.1 miles

$27 - $45

Drive  •  5h 26m

  1. Drive from Porto to Madrid 350.8 miles

$80 - $120

Train to Vigo, fly  •  6h 12m

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

$52 - $229

Questions & Answers

The cheapest way to get from Porto to Madrid is to rideshare which costs 23€ - 40€ and takes 6h 14m.

More details

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

More details

Yes, there is a direct bus departing from Oporto and arriving at Madrid. Services depart five times a day, and operate every day. The journey takes approximately 7h 15m.

More details

No, there is no direct train from Porto to Madrid. However, there are services departing from Porto(Campanha) and arriving at Madrid Sol via Vigo-Guixar and Madrid Chamartín. The journey, including transfers, takes approximately 10h 6m.

More details

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

Get driving directions

The best way to get from Porto to Madrid without a car is to bus and train which takes 7h 13m and costs 90€ - 120€.

More details

It takes approximately 7h 13m to get from Porto to Madrid, including transfers.

More details

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

More details

Porto to Madrid train services, operated by Portuguese Railways (CP), depart from Porto(Campanha) station.

More details

The best way to get from Porto to Madrid is to bus which takes 7h 15m and costs 30€ - 65€. Alternatively, you can train, which costs 70€ - 110€ and takes 10h 6m, you could also fly, which costs 21€ - 130€ and takes 4h 21m.

Mode details

Map of how to get from Porto to Madrid.
Launch map view
  • Distance: 263.2 miles
  • Duration: 7h 13m

What companies run services between Porto, Portugal and Madrid, Spain?

ALSA operates a bus from Porto to Madrid twice daily. Tickets cost $35 - $60 and the journey takes 7h 15m. InterNorte also services this route 3 times a day. Alternatively, you can take a train from Porto to Madrid via Vigo-Guixar, Madrid-Chamartin, and Madrid Chamartín in around 10h 6m.

Airlines
Air Europa
Website
aireuropa.com
Flights from Porto to Madrid
Ave. Duration
1h 10m
When
Every day
Estimated price
$80 - $360
Flights from Vigo to Madrid
Ave. Duration
1h 10m
When
Every day
Estimated price
$70 - $280
Iberia
Website
iberia.com
Flights from Porto to Madrid
Ave. Duration
1h 10m
When
Every day
Estimated price
$140 - $480
Flights from Vigo to Madrid
Ave. Duration
1h 15m
When
Every day
Estimated price
$100 - $370
TAP Portugal
Website
flytap.com
Flights from Porto to Madrid
Ave. Duration
1h 10m
When
Every day
Estimated price
$40 - $240
Flights from Porto to Madrid via Lisbon
Ave. Duration
3h 14m
When
Every day
Estimated price
$40 - $240
Ryanair
Website
ryanair.com
Flights from Porto to Madrid
Ave. Duration
1h 15m
When
Every day
Estimated price
$23 - $190
Train operators
Spanish Railways (RENFE)

Based in Madrid, Renfe is a state-owned train operator, that connects cities across Spain and neighbouring countries including Portugal, France, Germany, Switzerland, and the Netherlands. Renfe’s extensive network means most destinations offer multiple trains a day, with the most popular routes normally offering a train each hour. Locally known as AVE, the high-speed trains can reach speeds of up to 350km/h, making travel between major cities very efficient. Comfort is key in a Renfe train, with seats with footrests in all three classes of travel: Standard, Club and First. Each seat has an individual light, a pull-down table and an electrical outlet for in Club and First classes. There is free WiFi for first class passengers and for those with a + Renfe card.

Rome2rio's guide to Spanish Railways (RENFE)
Contact Details
Phone
902 320 320
Website
renfe.com
Train from Zamora to Madrid-Chamartin
Ave. Duration
1h 33m
Frequency
Every 3 hours
Estimated price
$27 - $40
Website
renfe.com
Train from Vigo-Guixar to Madrid-Chamartin
Ave. Duration
6h 33m
Frequency
3 times a day
Estimated price
$70 - $90
Website
renfe.com
Night train from Vilar Formoso to Madrid Chamartín Station
Ave. Duration
5h 5m
Frequency
Once daily
Estimated price
$45 - $65
Website
renfe.com
Portuguese Railways (CP)

Comboios de Portugal (CP) is the national railway network of Portugal, and spans over 2700km, with trains being split into four main types: regional and intercity trains, international and domestic high-speed trains, and international night trains. Portugal's main stations are Santa Apolónia in Lisbon and Campanha in Porto - these train stations connect to trains in Portugal's main cities and international destinations. The Alfa Pendular, the fastest train in Portugal, is a popular travel choice, as it can run at a speed of up to 250 km/h.

Contact Details
Phone
+351 707 210 220
Website
cp.pt
Train from Porto(Campanha) to Vigo-Guixar
Ave. Duration
2h 20m
Frequency
3 times a day
Estimated price
$14 - $27
Website
cp.pt
Night train from Vilar Formoso to Madrid-Chamartin
Ave. Duration
5h 5m
Frequency
Once daily
Estimated price
$45 - $65
Website
cp.pt
Bus operators
Iberocoach
Phone
(+351) 253 267 730
Website
iberocoach.com
Bus from Porto - Campo 24 de Agosto - Enfrente ao Pingo Doce to Zamora - Estación de Autobuses
Ave. Duration
4h 27m
Frequency
Once daily
Estimated price
$80 - $95
Website
iberocoach.com
ALSA

A Spanish subsidiary of National Express, ALSA provides bus and coach services across Spain and neighbouring countries including Portugal, France, Germany, the Netherlands, Italy, Poland and Malta. Founded in 1923, ALSA values service and the customer experience. Buses are equipped with communal TV screens showing movies, individual behind-seat screens, ALSA radio, app for books and music, and free WiFi so you’re never bored on your journey. ALSA services are accessible to people with disabilities, and guide dogs are welcome on all journeys. Flexibility is another highlight of an ALSA journey, with three types of tickets on offer - Frequent Traveller Pass, Share Pass and ALSA Pass, along with discounts for senior citizens, students and children.

Contact Details
Phone
+34 902 42 22 42
Website
alsa.es
Bus from Oporto to Madrid
Ave. Duration
7h 15m
Frequency
Twice daily
Estimated price
$35 - $60
Website
alsa.com
InterNorte
Phone
707 200 512
Website
internorte.pt
Bus from Porto - Casa da Música to Madrid Avenida de América
Ave. Duration
10h 5m
Frequency
3 times a day
Estimated price
$55 - $75
Schedules at
internorte.pt
FlixBus

One of Europe’s leading bus companies, Flixbus serves over 1400 destinations, in 26 countries including Germany, France, Italy, Austria, the Netherlands, Croatia, Spain, and across Scandinavia and central and eastern Europe. Founded in 2012, Flixbus’ extensive network connects cities with approximately 200,000 trips, with buses often departing every 30 minutes. One of the most affordable ways to get around Europe (and expanding soon into the US), a Flixbus journey is cost-effective, well-connected, comfortable and safe.

Rome2rio's guide to FlixBus
Contact Details
Phone
+49 1807 123 99 123
Email
info@flixbus.de
Website
flixbus.de
Night bus from Porto, Porto to Madrid
Ave. Duration
8h 40m
Frequency
5 times a week
Estimated price
$35 - $65
Website
flixbus.co.uk
Transportes Barquense
Phone
(+351) 258 454 303
Email
info@barquense.com
Website
barquense.viageos.com
Bus from Porto to Vilar Formoso
Ave. Duration
4h 45m
Frequency
On demand
Estimated price
$22 - $35
Schedules at
barquense.com
Other operators
BlaBlaCar

A ridesharing platform with 40 million users, Blablacar gives you access to destinations without worrying about on-the-road chaos. 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 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
$27 - $45
Book at
blablacar.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.

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 ALSA, arrive at Madrid station.

More details

Madrid is 1h ahead of Porto. It is currently 5:00 PM in Porto and 6:00 PM in Madrid.

Porto to Madrid train services, operated by Spanish Railways (RENFE), arrive at Madrid-Chamartin station.

More details

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

Get driving directions

Ryanair, Air Europa, Iberia and TAP Portugal offer flights from Porto Airport to Madrid Airport.

Search flights

Book your Porto to Madrid bus tickets online with Busbud.

Search and book

There are 3870+ hotels available in Madrid. Prices start at $54 USD 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 Metro which takes 29m and costs 1€ - 2€.

More details