There are 9 ways to get from Portugal to Madrid by plane, bus, train (Renfe), rideshare, 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)OPO - MAD
4h 2m€34–115Bus
cheapest- Take the bus from Lisbon - Oriente to Madrid - South StationBlaBlaCar Bus
8h 39m€16–62Train
- Take the train from Lisboa - Santa Apolonia to EntroncamentoRe / ...
- Take the train from Entroncamento to BadajozRe
- Take the train from Badajoz to Madrid-Puerta de Atocha-Almudena GrandesAlv
10h 45m€51–114Rideshare
- Take the rideshare from Lisbon to Madrid604.5 km
7h 15m€32Fly from Lisbon-Portela Airport
- Fly from Lisbon-Portela Airport (LIS) to Adolfo Suárez Madrid–Barajas Airport (MAD)LIS - MAD
4h 6m€34–177Bus to Vigo, fly
- Take the bus from Centro Coordenador de Transportes de Braga to Vigo Urzáiz
- Fly from Vigo (VGO) to Adolfo Suárez Madrid–Barajas Airport (MAD)VGO - MAD
4h 52m€34–163Bus to Badajoz Airport, fly
- Take the bus from Setúbal to Badajoz
- Fly from Badajoz Airport (BJZ) to Adolfo Suárez Madrid–Barajas Airport (MAD)BJZ - MAD
5h 56m€74–300Bus via Madrid
- Take the bus from Lisbon to MadridFlixBus 794 / ...
9h 9m€18–52Drive 599.4 km
- Drive from Lisbon to Madrid599.4 km
6h 31m€93–135
Portugal to Madrid by bus
Questions & Answers
The cheapest way to get from Portugal to Madrid is to bus via Madrid which costs €18 - €55 and takes 9h 9m.
The fastest way to get from Portugal to Madrid is to fly which takes 4h 2m and costs €30 - €120.
No, there is no direct bus from Portugal to Madrid station. However, there are services departing from Martim Moniz and arriving at Madrid - South Station via Lisbon - Oriente. The journey, including transfers, takes approximately 8h 39m.
No, there is no direct train from Portugal to Madrid. However, there are services departing from Lisboa - Santa Apolonia and arriving at Madrid-Puerta de Atocha-Almudena Grandes via Entroncamento and Badajoz. The journey, including transfers, takes approximately 10h 45m.
The distance between Portugal and Madrid is 458 km. The road distance is 599.4 km.
The best way to get from Portugal to Madrid without a car is to bus which takes 8h 39m and costs €16 - €65.
It takes approximately 4h 2m to get from Portugal to Madrid, including transfers.
Portugal to Madrid bus services, operated by BlaBlaCar Bus, depart from Lisbon - Oriente station.
Portugal to Madrid train services, operated by Comboios de Portugal, depart from Lisboa - Santa Apolonia station.
The best way to get from Portugal to Madrid is to fly which takes 4h 2m and costs €30 - €120. Alternatively, you can bus, which costs €16 - €65 and takes 8h 39m, you could also train, which costs €50 - €120 and takes 10h 45m.
What companies run services between Portugal and Madrid, Spain?
Iberia, Air Europa, 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 Lisbon - Oriente to Madrid - South Station 3 times a day. Tickets cost €14–55 and the journey takes 7h. ALSA 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
- €30–90
Flights from Lisbon-Portela Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 25m
- When
- Every day
- Estimated price
- €30–120
Flights from Vigo to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- €29–140
Flights from Badajoz Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 17m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €50–120
- 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
- €24–110
Flights from Lisbon-Portela Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- €25–140
Flights from Vigo to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 8m
- When
- Every day
- Estimated price
- €30–140
- Website
- ryanair.com
Flights from Francisco De Sá Carneiro Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 20m
- When
- Every day
- Estimated price
- €30–120
Flights from Lisbon-Portela Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 25m
- When
- Monday, Thursday, Saturday, and Sunday
- Estimated price
- €35–160
- Website
- flytap.com
Flights from Francisco De Sá Carneiro Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 25m
- When
- Monday, Tuesday, Thursday, and Saturday
- Estimated price
- €65–310
Flights from Francisco De Sá Carneiro Airport to Adolfo Suárez Madrid–Barajas Airport via Lisbon-Portela Airport
- Ave. Duration
- 3h 10m
- When
- Every day
- Estimated price
- €50–100
Flights from Lisbon-Portela Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 25m
- When
- Every day
- Estimated price
- €26–180
- Website
- easyjet.com
Flights from Lisbon-Portela Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 20m
- When
- Every day
- Estimated price
- €28–140
- Website
- ethiopianairlines.com
Flights from Francisco De Sá Carneiro Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 25m
- When
- Monday, Tuesday, Thursday, and Saturday
- Estimated price
- €65–310
Flights from Lisbon-Portela Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- €25–140
- Phone
- +351 210 900 032
- Website
- cp.pt
Train from Lisboa - Santa Apolonia to Entroncamento
- Ave. Duration
- 1h 35m
- Frequency
- Hourly
- Estimated price
- €8–20
- Website
- https://www.cp.pt/passageiros/en
Train from Entroncamento to Badajoz
- Ave. Duration
- 2h 48m
- Frequency
- Twice daily
- Estimated price
- €14
- Website
- https://www.cp.pt/passageiros/en
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Badajoz to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 4h 22m
- Frequency
- 3 times a day
- Estimated price
- €29–80
- Website
- https://www.renfe.com/es/en
- Phone
- +3-389-268-0068
- Website
- blablacar.co.uk
Bus from Lisbon - Oriente to Madrid - South Station
- Ave. Duration
- 7h
- Frequency
- 3 times a day
- Estimated price
- €14–55
- Website
- https://www.blablacar.co.uk/bus
Bus from Setúbal to Badajoz
- Ave. Duration
- 2h 10m
- Frequency
- Once daily
- Estimated price
- €14–55
- Website
- https://www.blablacar.co.uk/bus
- Phone
- +34 910 207 007
- alsa@alsa.es
- Website
- alsa.com
Bus from Lisbon - Oriente to Madrid - South Station
- Ave. Duration
- 8h 45m
- Frequency
- Twice daily
- Estimated price
- €15–60
- Website
- https://www.alsa.com/en/
- Phone
- +351 21 75 24 524
- Website
- rede-expressos.pt
Bus from Centro Coordenador de Transportes de Braga to Vigo Urzáiz
- Ave. Duration
- 1h 30m
- Frequency
- 5 times a day
- Estimated price
- €1–11
- Website
- https://rede-expressos.pt/en
- Online ticket
- €1–11
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Centro Coordenador de Transportes de Braga to Vigo Urzáiz
- Ave. Duration
- 1h 30m
- Frequency
- 4 times a day
- Estimated price
- €8–20
- Website
- https://www.flixbus.co.uk
Bus from Lisbon to Madrid
- Ave. Duration
- 7h 30m
- Frequency
- 5 times a day
- Estimated price
- €16–50
- Website
- https://www.flixbus.co.uk
Rome2Rio's guide to BlaBlaCar
Contact Details
- Phone
- +3 318 576 2228
- Website
- blablacar.com
Rideshare from Lisbon to Madrid
- Ave. Duration
- 7h 15m
- Frequency
- Every 4 hours
- Estimated price
- €32
- Schedules at
- blablacar.com
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
Is ride-sharing platform BlaBlaCar right for you?
Read the travel guide
More Questions & Answers
Portugal to Madrid bus services, operated by BlaBlaCar Bus, arrive at Madrid - South Station.
Portugal to Madrid train services, operated by Comboios de Portugal, arrive at Entroncamento station.
Yes, the driving distance between Portugal to Madrid is 599 km. It takes approximately 6h 31m to drive from Portugal to Madrid.
Book your Portugal to Madrid train tickets online with Omio.
There are 6929+ hotels available in Madrid.
Check out Blablacar's carpooling service for rideshare options between Portugal and Madrid. A great option if you don't have a driver's licence or want to avoid public transport.





























