Rome2Rio

How to get fromPorto to Madridby plane, bus, train (Renfe), rideshare, train, or car

Find Transport to Madrid

See all options

There are 8 ways to get from Porto to Madrid by plane, bus, train (Renfe), rideshare, train, 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.

  1. Fly from Francisco De Sá Carneiro Airport

    best
    1. Fly from Francisco De Sá Carneiro Airport (OPO) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane plane OPO - MAD
    4h 9m
    €34–186
  2. Rideshare

    cheapest
    1. Take the rideshare from Porto to Madridrideshare rideshare 550.8 km
    6h 14m
    €24–40
  3. Bus

    1. Take the bus from Porto - Terminal Intermodal de Campanhã to Estación Sur de Autobusesbus bus BlaBlaCar Bus
    7h 6m
    €38–72
  4. Train (Renfe)

    1. Take the train from Porto Campanha to Porrinotrain train Ic
    2. Take the train from Porrino to Ourensetrain train Re
    3. Take the train from Ourense to Madrid Chamartíntrain train Ave
    8h 19m
    €88–167
  5. Train to Vigo, fly

    1. Take the train from Porto Campanha to Vigo Guixartrain train
    2. Fly from Vigo (VGO) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane plane VGO - MAD
    6h 17m
    €61–247
  6. Bus, train

    1. Take the bus from Porto - Terminal Intermodal de Campanhã to Zamorabus bus
    2. Take the train from Zamora to Madrid Chamartíntrain train Ave
    7h 51m
    €89–121
  7. Bus via Callao

    1. Take the bus from Porto - Terminal Intermodal de Campanhã to Estación Sur de Autobusesbus bus
    8h 15m
    €40–74
  8. Drive  551.6 km

    1. Drive from Porto to Madridcar car 551.6 km
    5h 39m
    €89–128

Porto to Madrid by bus

Calendar24Weekly Buses
Duration7h 6mAverage Duration
Ticket€38Cheapest Price
See schedules

Questions & Answers

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

Iberia, Ryanair, and three other airlines fly from Francisco De Sá Carneiro Airport (OPO) to Adolfo Suárez Madrid–Barajas Airport (MAD) hourly. Alternatively, BlaBlaCar Bus operates a bus from Porto - Terminal Intermodal de Campanhã to Estación Sur de Autobuses once daily. Tickets cost €40–70 and the journey takes 6h 40m. Gipsyy Portugal also services this route twice daily.

Airlines
Train operators
Bus operators
Other operators

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

More Questions & Answers