There are 4 ways to get from Madrid to Oviedo by train (Renfe), 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 (Renfe)
best- Take the train from Madrid Chamartín to Miranda De Ebrotrain Alv / ...
4h 15m€50–77Bus
cheapest- Take the bus from Madrid, Avenida de América to Miranda De Ebrobus Alsa / ...
5h 4m€28–41Drive 321.1 km
- Drive from Madrid to Oviedocar 321.1 km
3h 21m€51–74Fly, bus
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Bilbao Airport (BIO)plane MAD - BIO
- Take the bus from Bilbao Intermodal to Berguendabus
5h 15m€45–168
Madrid to Oviedo by train and bus (Renfe)
Questions & Answers
The cheapest way to get from Madrid to Oviedo is to bus which costs €28 - €45 and takes 5h 4m.
The fastest way to get from Madrid to Oviedo is to drive which takes 3h 21m and costs €50 - €75.
No, there is no direct bus from Madrid to Oviedo. However, there are services departing from Madrid, Avenida de América and arriving at Berguenda via Miranda De Ebro. The journey, including transfers, takes approximately 5h 4m.
No, there is no direct train from Madrid to Oviedo. However, there are services departing from Madrid Chamartín and arriving at Miranda De Ebro via . The journey, including transfers, takes approximately 4h 15m.
The distance between Madrid and Oviedo is 405 km. The road distance is 321.1 km.
The best way to get from Madrid to Oviedo without a car is to train which takes 4h 15m and costs €50 - €80.
It takes approximately 4h 15m to get from Madrid to Oviedo, including transfers.
Madrid to Oviedo bus services, operated by ALSA, depart from Madrid, Avenida de América station.
Madrid to Oviedo train services, operated by Renfe Viajeros, depart from Madrid Chamartín station.
The best way to get from Madrid to Oviedo is to train which takes 4h 15m and costs €50 - €80. Alternatively, you can bus, which costs €28 - €45 and takes 5h 4m.
What companies run services between Madrid, Spain and Oviedo, Basque Country, Spain?
Renfe Viajeros operates a train from Madrid Chamartín to Miranda De Ebro every 3 hours. Tickets cost €45–75 and the journey takes 2h 56m. Alternatively, ALSA operates a bus from Madrid, Avenida de América to Miranda De Ebro 4 times a day. Tickets cost €27–40 and the journey takes 3h 45m.
- Website
- iberia.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Bilbao Airport
- Ave. Duration
- 1h 5m
- When
- Every day
- Estimated price
- €30–100
- Website
- aireuropa.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Bilbao Airport
- Ave. Duration
- 1h 1m
- When
- Every day
- Estimated price
- €35–150
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Madrid Chamartín to Miranda De Ebro
- Ave. Duration
- 2h 56m
- Frequency
- Every 3 hours
- Estimated price
- €45–75
- Website
- https://www.renfe.com/es/en
- Phone
- +34 910 207 007
- Website
- alsa.com
Bus from Madrid, Avenida de América to Miranda De Ebro
- Ave. Duration
- 3h 45m
- Frequency
- 4 times a day
- Estimated price
- €27–40
- Website
- https://www.alsa.com/en/
Bus from Bilbao Intermodal to Berguenda
- Ave. Duration
- 1h 15m
- Frequency
- Once a week
- Estimated price
- €8–13
- Website
- https://www.alsa.com/en/
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
More Questions & Answers
Madrid to Oviedo bus services, operated by ALSA, arrive at Miranda De Ebro station.
Madrid to Oviedo train services, operated by Renfe Viajeros, arrive at Miranda De Ebro station.
Yes, the driving distance between Madrid to Oviedo is 321 km. It takes approximately 3h 21m to drive from Madrid to Oviedo.
There are 258+ hotels available in Oviedo.









