There are 10 ways to get from Madrid to Algarve by train, bus, 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.
Train, bus via Córdoba
best- Take the train from Madrid-Puerta de Atocha-Almudena Grandes to Cordoba-Centraltrain Ave
- Take the train from Cordoba-Central to Sevilla-Santa Justatrain Avn / ...
- Take the bus from Sevilla Santa Justa to Tavirabus
- Take the train from Tavira to Tunestrain Re / ...
8h 32m€85–197Fly to Faro Airport, line 83 bus
cheapest- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Faro Airport (FAO)plane MAD - FAO
- Take the bus from Terminal Rodoviário de Loulé to Alte - Fonte Pequenabus
7h 18m€38–183Train, bus
- Take the train from Madrid-Puerta de Atocha-Almudena Grandes to Sevilla-Santa Justatrain Ave
- Take the bus from Sevilla Santa Justa to Albufeirabus
10h 15m€67–185Drive 657.4 km
- Drive from Madrid to Algarvecar 657.4 km
7h 45m€104–150Train, bus #2
- Take the train from Madrid-Puerta de Atocha-Almudena Grandes to Huelvatrain Alv / ...
- Take the bus from Huelva to Tavirabus
- Take the train from Tavira to Tunestrain Re / ...
8h 40m€110–167Bus via Lisbon
- Take the bus from Estación Sur de Autobuses to Almada – Cova da Piedade Metrobus BlaBlaCar Bus
- Take the bus from Almada - Centro Sul to Terminal Rodoviário de São Bartolomeu de Messinesbus 90 | Lisboa
11h 57m€71–141Bus
- Take the bus from Estación Sur de Autobuses to Huelvabus Madrid
- Take the bus from Huelva to Albufeirabus
13h 32m€60–114Fly to Seville Airport, bus
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Seville Airport (SVQ)plane MAD - SVQ
- Take the bus from Sevilla - Plaza de Armas to Farobus
8h 13m€77–193Fly to Lisbon-Portela Airport, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Lisbon-Portela Airport (LIS)plane MAD - LIS
- Take the train from Lisboa Oriente to Tunestrain
7h 36m€83–263Fly to Jerez Airport, train, bus
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Jerez Airport (XRY)plane MAD - XRY
- Take the train from La Parra to Sevilla-Santa Justatrain
- Take the bus from Sevilla Santa Justa to Tavirabus
- Take the train from Tavira to Tunestrain
9h 49m€125–342
Adolfo Suárez Madrid–Barajas Airport (MAD) to Faro Airport (FAO) flights
Questions & Answers
The cheapest way to get from Madrid to Algarve is to bus which costs €55 - €120 and takes 13h 32m.
The fastest way to get from Madrid to Algarve is to fly and line 83 bus which takes 7h 18m and costs €35 - €190.
No, there is no direct bus from Madrid to Algarve. However, there are services departing from Estación Sur de Autobuses and arriving at Alte via Almada - Centro Sul and Terminal Rodoviário de São Bartolomeu de Messines. The journey, including transfers, takes approximately 11h 57m.
The distance between Madrid and Algarve is 728 km. The road distance is 657.4 km.
The best way to get from Madrid to Algarve without a car is to train and bus via Córdoba which takes 8h 32m and costs €85 - €200.
It takes approximately 8h 32m to get from Madrid to Algarve, including transfers.
Madrid to Algarve bus services, operated by BlaBlaCar Bus, depart from Estación Sur de Autobuses station.
Madrid to Algarve bus services, operated by BlaBlaCar Bus, arrive at Almada – Cova da Piedade Metro station.
Yes, the driving distance between Madrid to Algarve is 657 km. It takes approximately 7h 45m to drive from Madrid to Algarve.
There are 9757+ hotels available in Algarve.
What companies run services between Madrid, Spain and Algarve, Portugal?
You can take a bus from Estación Sur de Autobuses to Alte via Almada – Cova da Piedade Metro, Almada - Centro Sul, and Terminal Rodoviário de São Bartolomeu de Messines in around 11h 57m.
- Website
- iberia.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Faro Airport
- Ave. Duration
- 1h 25m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €30–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Seville Airport
- Ave. Duration
- 1h 14m
- When
- Every day
- Estimated price
- €22–95
Flights from Adolfo Suárez Madrid–Barajas Airport to Lisbon-Portela Airport
- Ave. Duration
- 1h 25m
- When
- Every day
- Estimated price
- €29–130
Flights from Adolfo Suárez Madrid–Barajas Airport to Jerez Airport
- Ave. Duration
- 1h 20m
- When
- Every day
- Estimated price
- €45–220
- Website
- ryanair.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Faro Airport
- Ave. Duration
- 1h 25m
- When
- Every day
- Estimated price
- €26–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Faro Airport via Porto
- Ave. Duration
- 3h 35m
- When
- Monday, Wednesday, and Sunday
- Estimated price
- €26–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Lisbon-Portela Airport
- Ave. Duration
- 1h 30m
- When
- Monday, Tuesday, Wednesday, Thursday, and Sunday
- Estimated price
- €29–170
- Website
- flytap.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Lisbon-Portela Airport
- Ave. Duration
- 1h 25m
- When
- Every day
- Estimated price
- €35–170
- Website
- aireuropa.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Seville Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- €25–90
Flights from Adolfo Suárez Madrid–Barajas Airport to Lisbon-Portela Airport
- Ave. Duration
- 1h 20m
- When
- Every day
- Estimated price
- €30–180
- Website
- easyjet.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Lisbon-Portela Airport
- Ave. Duration
- 1h 25m
- When
- Every day
- Estimated price
- €35–160
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Madrid-Puerta de Atocha-Almudena Grandes to Cordoba-Central
- Ave. Duration
- 1h 44m
- Frequency
- Every 30 minutes
- Estimated price
- €50–95
- Website
- https://www.renfe.com/es/en
Train from Cordoba-Central to Sevilla-Santa Justa
- Ave. Duration
- 53 min
- Frequency
- Hourly
- Estimated price
- €19–35
- Website
- https://www.renfe.com/es/en
Train from Madrid-Puerta de Atocha-Almudena Grandes to Sevilla-Santa Justa
- Ave. Duration
- 2h 39m
- Frequency
- Hourly
- Estimated price
- €70–130
- Website
- https://www.renfe.com/es/en
- Phone
- +34 900 926 851
- [email protected]
- Website
- iryo.eu
Train from Madrid-Puerta de Atocha-Almudena Grandes to Cordoba-Central
- Ave. Duration
- 1h 51m
- Frequency
- Hourly
- Estimated price
- €35–70
- Website
- https://iryo.eu/en/home
Train from Cordoba-Central to Sevilla-Santa Justa
- Ave. Duration
- 54 min
- Frequency
- Every 2 hours
- Estimated price
- €12–26
- Website
- https://iryo.eu/en/home
Train from Madrid-Puerta de Atocha-Almudena Grandes to Sevilla-Santa Justa
- Ave. Duration
- 2h 52m
- Frequency
- Every 2 hours
- Estimated price
- €45–95
- Website
- https://iryo.eu/en/home
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Madrid-Puerta de Atocha-Almudena Grandes to Cordoba-Central
- Ave. Duration
- 1h 56m
- Frequency
- Hourly
- Estimated price
- €40–70
- Website
- https://www.renfe.com/es/en
Train from Cordoba-Central to Sevilla-Santa Justa
- Ave. Duration
- 54 min
- Frequency
- Every 30 minutes
- Estimated price
- €16–25
- Website
- https://www.renfe.com/es/en
Train from Madrid-Puerta de Atocha-Almudena Grandes to Sevilla-Santa Justa
- Ave. Duration
- 3h 9m
- Frequency
- Hourly
- Estimated price
- €60–95
- Website
- https://www.renfe.com/es/en
Train from Madrid-Puerta de Atocha-Almudena Grandes to Huelva
- Ave. Duration
- 3h 57m
- Frequency
- 4 times a day
- Estimated price
- €70–110
- Website
- https://www.renfe.com/es/en
Train from La Parra to Sevilla-Santa Justa
- Ave. Duration
- 56 min
- Frequency
- Hourly
- Estimated price
- €12–19
- Website
- https://www.renfe.com/es/en
- Phone
- +34 900 759 781
- Website
- ouigo.com
Train from Madrid-Puerta de Atocha-Almudena Grandes to Cordoba-Central
- Ave. Duration
- 1h 45m
- Frequency
- Every 2 hours
- Estimated price
- €30–55
- Website
- https://www.ouigo.com/es/en
Train from Cordoba-Central to Sevilla-Santa Justa
- Ave. Duration
- 53 min
- Frequency
- Every 4 hours
- Estimated price
- €11–20
- Website
- https://www.ouigo.com/es/en
Train from Madrid-Puerta de Atocha-Almudena Grandes to Sevilla-Santa Justa
- Ave. Duration
- 2h 40m
- Frequency
- Every 4 hours
- Estimated price
- €40–75
- Website
- https://www.ouigo.com/es/en
- Phone
- +351 210 900 032
- Website
- cp.pt
Train from Tavira to Tunes
- Ave. Duration
- 1h 15m
- Frequency
- Hourly
- Estimated price
- €7–14
- Website
- https://www.cp.pt/en/
Train from Tavira to Tunes
- Ave. Duration
- 1h 15m
- Frequency
- Hourly
- Estimated price
- €7–14
- Website
- https://www.cp.pt/en/
Train from Lisboa Oriente to Tunes
- Ave. Duration
- 2h 30m
- Frequency
- Every 3 hours
- Estimated price
- €28–55
- Website
- https://www.cp.pt/en/
Train from Tavira to Tunes
- Ave. Duration
- 1h 15m
- Frequency
- Hourly
- Estimated price
- €7–14
- Website
- https://www.cp.pt/en/
- Phone
- +351 21 75 24 524
- Website
- rede-expressos.pt
Bus from Sevilla Santa Justa to Tavira
- Ave. Duration
- 2h 15m
- Frequency
- Twice daily
- Estimated price
- €12–29
- Website
- https://rede-expressos.pt/en
Bus from Sevilla Santa Justa to Albufeira
- Ave. Duration
- 3h 44m
- Frequency
- Twice daily
- Estimated price
- €18–45
- Website
- https://rede-expressos.pt/en
Bus from Huelva to Tavira
- Ave. Duration
- 1h
- Frequency
- Twice daily
- Estimated price
- €5–13
- Website
- https://rede-expressos.pt/en
Bus from Almada - Centro Sul to Terminal Rodoviário de São Bartolomeu de Messines
- Ave. Duration
- 2h 30m
- Frequency
- 4 times a day
- Estimated price
- €16–40
- Website
- https://rede-expressos.pt/en
Bus from Huelva to Albufeira
- Ave. Duration
- 2h 14m
- Frequency
- Twice daily
- Estimated price
- €11–26
- Website
- https://rede-expressos.pt/en
Bus from Sevilla - Plaza de Armas to Faro
- Ave. Duration
- 2h 31m
- Frequency
- 3 times a day
- Estimated price
- €14–35
- Website
- https://rede-expressos.pt/en
Bus from Sevilla Santa Justa to Tavira
- Ave. Duration
- 2h 15m
- Frequency
- Twice daily
- Estimated price
- €12–29
- Website
- https://rede-expressos.pt/en
- Phone
- +351 300 074 830
- [email protected]
- Website
- vamusalgarve.pt
Bus from Terminal Rodoviário de Loulé to Alte - Fonte Pequena
- Ave. Duration
- 50 min
- Frequency
- Twice daily
- Estimated price
- €3–10
- Schedules at
- vamusalgarve.pt
- Simple Ticket
- €3–5
- Aerobus
- €8–10
- Phone
- +3 318 576 2228
- Website
- blablacar.co.uk
Bus from Estación Sur de Autobuses to Almada – Cova da Piedade Metro
- Ave. Duration
- 7h 10m
- Frequency
- Once daily
- Estimated price
- €50–95
- Website
- https://www.blablacar.co.uk/bus
- Phone
- +34 915 304 417
- [email protected]
- Website
- socibusventas.es
Bus from Estación Sur de Autobuses to Huelva
- Ave. Duration
- 7h 26m
- Frequency
- 3 times a day
- Estimated price
- €40–75
- Website
- https://socibusventas.es/en/
Rome2Rio's guide to FlixBus
Contact DetailsContact Details
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- https://www.flixbus.fr
Bus from Huelva to Albufeira
- Ave. Duration
- 2h 15m
- Frequency
- Twice daily
- Estimated price
- €13–23
- Website
- https://www.flixbus.co.uk
Bus from Sevilla - Plaza de Armas to Faro
- Ave. Duration
- 2h 35m
- Frequency
- Twice daily
- Estimated price
- €17–30
- Website
- https://www.flixbus.co.uk
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
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





































