There are 7 ways to get from Olhão to Madrid by bus, train, car, plane, or ferry
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Bus, train via Seville
best- Take the bus from Tavira to Sevilla Santa Justabus
- Take the train from Sevilla-Santa Justa to Madrid-Puerta de Atocha-Almudena Grandestrain Ave
6h 54m€54–163Fly from Faro Airport
cheapest- Fly from Faro Airport (FAO) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane FAO - MAD
4h 28m€33–172Bus
- Take the bus from Faro to Sevilla - Plaza de Armasbus
- Take the bus from Sevilla, Estación de Autobuses to Estación Sur de Autobusesbus Huelva
11h 10m€51–107Drive 667 km
- Drive from Olhão to Madridcar 667 km
7h 11m€106–152Bus, train
- Take the bus from Tavira to Huelvabus
- Take the train from Huelva to Madrid-Puerta de Atocha-Almudena Grandestrain Alv / ...
7h 37m€79–129Train, ferry, bus
- Take the train from Olhao to Vila Real De Santo Antoniotrain 881 / ...
- Take the ferry from Vila Real de Santo António to Ayamonteferry
- Take the bus from Ayamonte to Madrid Estación Sur de Autobusesbus
14h 38m€71–136Bus to Seville Airport, fly
- Take the bus from Tavira to Sevilla - Plaza de Armasbus
- Fly from Seville Airport (SVQ) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane SVQ - MAD
6h 55m€40–154
Olhão to Madrid by train, foot, and bus
Questions & Answers
The cheapest way to get from Olhão to Madrid is to bus and fly which costs €40 - €160 and takes 6h 55m.
The fastest way to get from Olhão to Madrid is to fly which takes 4h 28m and costs €30 - €180.
No, there is no direct bus from Olhão to Madrid. However, there are services departing from Terminal Rodoviário de Olhão and arriving at Estación Sur de Autobuses via Faro and Sevilla, Estación de Autobuses. The journey, including transfers, takes approximately 11h 10m.
The distance between Olhão and Madrid is 660 km. The road distance is 667 km.
The best way to get from Olhão to Madrid without a car is to bus and train via Seville which takes 6h 54m and costs €50 - €170.
It takes approximately 6h 54m to get from Olhão to Madrid, including transfers.
Olhão to Madrid bus services, operated by Rede Expressos, depart from Faro station.
The best way to get from Olhão to Madrid is to bus which takes 11h 10m and costs €50 - €110. Alternatively, you can fly, which costs €30 - €180 and takes 4h 28m.
Olhão to Madrid bus services, operated by Rede Expressos, arrive at Sevilla - Plaza de Armas station.
Madrid is 1h ahead of Olhão. It is currently 12:23 PM in Olhão and 1:23 PM in Madrid.
What companies run services between Olhão, Portugal and Madrid, Spain?
You can take a bus from Terminal Rodoviário de Olhão to Estación Sur de Autobuses via Faro and Sevilla, Estación de Autobuses in around 11h 10m. Alternatively, Ryanair, Iberia, and two other airlines fly from Faro Airport (FAO) to Adolfo Suárez Madrid–Barajas Airport (MAD) 4 times a day.
- Website
- ryanair.com
Flights from Faro Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 20m
- When
- Every day
- Estimated price
- €26–150
- Website
- iberia.com
Flights from Faro Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 30m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €30–150
Flights from Seville Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 6m
- When
- Every day
- Estimated price
- €22–95
- Website
- aireuropa.com
Flights from Seville Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 5m
- When
- Every day
- Estimated price
- €25–90
- Website
- flytap.com
Flights from Faro Airport to Adolfo Suárez Madrid–Barajas Airport via Lisboa
- Ave. Duration
- 3h 5m
- When
- Monday, Wednesday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- €40–140
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Sevilla-Santa Justa to Madrid-Puerta de Atocha-Almudena Grandes
- 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 Sevilla-Santa Justa to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 2h 44m
- 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 Sevilla-Santa Justa to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 3h 7m
- Frequency
- Hourly
- Estimated price
- €60–95
- Website
- https://www.renfe.com/es/en
Train from Huelva to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 3h 57m
- Frequency
- 4 times a day
- Estimated price
- €70–110
- Website
- https://www.renfe.com/es/en
- Phone
- +34 900 759 781
- Website
- ouigo.com
Train from Sevilla-Santa Justa to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 2h 39m
- 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 Olhao to Vila Real De Santo Antonio
- Ave. Duration
- 52 min
- Frequency
- Hourly
- Estimated price
- €4–10
- Website
- https://www.cp.pt/en/
- Phone
- +351 21 75 24 524
- Website
- rede-expressos.pt
Bus from Tavira to Sevilla Santa Justa
- Ave. Duration
- 2h 30m
- Frequency
- Twice daily
- Estimated price
- €12–29
- Website
- https://rede-expressos.pt/en
Bus from Faro to Sevilla - Plaza de Armas
- Ave. Duration
- 2h 30m
- Frequency
- 3 times a day
- Estimated price
- €14–35
- Website
- https://rede-expressos.pt/en
Bus from Tavira to Huelva
- Ave. Duration
- 1h
- Frequency
- Once daily
- Estimated price
- €5–13
- Website
- https://rede-expressos.pt/en
Bus from Tavira to Sevilla - Plaza de Armas
- Ave. Duration
- 2h
- Frequency
- Twice daily
- Estimated price
- €11–28
- 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 Faro to Sevilla - Plaza de Armas
- Ave. Duration
- 2h 35m
- Frequency
- Twice daily
- Estimated price
- €17–29
- Website
- https://www.flixbus.co.uk
- Phone
- +34 915 304 417
- [email protected]
- Website
- socibusventas.es
Bus from Sevilla, Estación de Autobuses to Estación Sur de Autobuses
- Ave. Duration
- 6h 15m
- Frequency
- 4 times a day
- Estimated price
- €35–65
- Website
- https://socibusventas.es/en/
- Phone
- +34 916 52 00 11
- [email protected]
- Website
- grupointerbus.com
Bus from Ayamonte to Madrid Estación Sur de Autobuses
- Ave. Duration
- 11h 5m
- Frequency
- 4 times a week
- Estimated price
- €65–120
- Schedules at
- grupointerbus.com
- Phone
- +34 652 525 168
- Website
- facebook.com
Ferry from Vila Real de Santo António to Ayamonte
- Ave. Duration
- 15 min
- Frequency
- Every 4 hours
- Estimated price
- €2–7
- Schedules at
- rioguadiana.net
- Bike
- €2
- Passenger
- €3
- Car
- €7
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 Olhão to Madrid is 667 km. It takes approximately 7h 11m to drive from Olhão to Madrid.
Book your Olhão to Madrid bus tickets online with Omio.
There are 6913+ hotels available in Madrid.


































