Rome2Rio

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

Find Transport to Madrid

See all options

There are 8 ways to get from Porto to Madrid by plane, bus, train (Renfe), rideshare, train, car, or towncar

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 2m
    €32–184
  2. Rideshare

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

    1. Take the bus from Porto - Terminal Intermodal de Campanhã to Estación Sur de Autobusesbus bus
    7h 30m
    €35–75
  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 9m
    €86–165
  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 9m
    €60–265
  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 43m
    €88–119
  7. Drive  551.6 km

    1. Drive from Porto to Madridcar car 551.6 km
    5h 39m
    €91–131
  8. Towncar, train

    1. Take a town car from Porto - Aeroporto Francisco Sá Carneiro to Ourensetowncar towncar
    2. Take the train from Ourense to Madrid Chamartíntrain train Ave
    7h 34m
    €307–372

Porto to Madrid by bus

Calendar44Weekly Buses
Duration7h 30mAverage Duration
Ticket€35Cheapest Price
See schedules

Comparing Your Travel Options

What companies run services between Porto, 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) hourly. Alternatively, Rede Expressos operates a bus from Porto - Terminal Intermodal de Campanhã to Estación Sur de Autobuses 3 times a day. Tickets cost €35–70 and the journey takes 7h 30m. Two other operators also service this route.

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

Booking & Getting There