How to travel from Madrid to Porto

Sat, Aug 22
+ Add return
Travel by train, bus, flight with
Alsa
Ryanair
AVE
Gipsyy
FlixBus
1,000+ more
Alsa
Ryanair
AVE
Gipsyy
FlixBus
1,000+ more
QR-Code
Scan to get our free app
Use our app to get live travel updates and book mobile tickets for trains, buses, flights, and ferries.
App Store
rate4.9
42K ratings
Google Play
rate4.6
136K reviews

Travel Information

Compare train, bus, and flight for Madrid to Porto

Omio recommends booking the bus as it is the most popular option from Madrid to Porto among Omio's users. If you are prioritising price take the bus with prices starting from €10. For those with little time consider booking a flight which can get you there in 3h 52m. In case you are seeking to minimise your carbon footprint the train is your best bet as it emits only 0.1 - 0.4kg. The ticket price range depends on the travel mode: a bus costs an average of €10, and a flight costs an average of €30.

Distance: 421 km

Compare bus with

Most popular
Bus
Flight
Train

€30

Average price

Cheapest

€146

Average price

€74

Average price

6h 23m

Average total duration

5h 53m

Onboard

+

30m

Additional time*

6h 52m

Average total duration

Fastest

3h 52m

Onboard

+

3h 0m

Additional time*

6h 7m

Average total duration

5h 37m

Onboard

+

30m

Additional time*

0.4 - 1.1kg

CO2 emissions

1.3 - 2.5kg

CO2 emissions

0.1 - 0.4kg

CO2 emissions

Lowest
Alsa

Most popular bus company

Ryanair

Most popular airline

AVE

Most popular train company

Direct Options

Direct Options

Direct Options

Additional time: Average total travel duration to departure point, security checks and transfers.

Travel options
from Madrid to Porto

How to get from Madrid to Porto by train, bus or flight.

Our recommendation

bus

The best way to travel from Madrid to Porto is by taking a bus because it’s the best combination of price and speed.

  • BlaBlaCar Bus54153
    2:10 PM6h15
    Madrid, Estación Sur de Autobuses
    7:25 PMPorto, Terminal Intermodal de Campanhã
    301One-way
    0 transfers

Cheapest

  • BlaBlaCar Bus54153
    2:10 PM6h15
    Madrid, Estación Sur de Autobuses
    7:25 PMPorto, Terminal Intermodal de Campanhã
    301One-way
    0 transfers

Fastest

  • Air EuropaUX1147
    6:35 AM1h15
    Madrid Barajas Airport
    6:50 AMPorto Airport
    881One-way
    0 transfers

Other options

  • AVE04475+Renfe00422
    8:26 AM12h09
    Madrid Chamartín
    7:35 PMPorto - Campanhã
    1081One-way
    1 transfer
  • AVE04515+Renfe00422
    11:17 AM9h18
    Madrid Chamartín
    7:35 PMPorto - Campanhã
    1181One-way
    1 transfer
  • AlsaNormal
    10:00 AM7h54
    Madrid, Estación Sur de Autobuses
    4:54 PMPorto, Terminal Intermodal de Campanhã
    301One-way
    0 transfers
  • AlsaNormal
    4:15 PM7h59
    Madrid, Estación Sur de Autobuses
    11:14 PMPorto, Terminal Intermodal de Campanhã
    301One-way
    0 transfers
  • AlsaNormal
    4:15 PM8h14
    Madrid, Estación Sur de Autobuses
    11:29 PMPorto, Polo Universitario (Bus Terminal)
    301One-way
    0 transfers
  • IberiaIB1153
    7:40 PM1h20
    Madrid Barajas Airport
    8:00 PMPorto Airport
    321One-way
    0 transfers
  • IberiaIB545
    11:25 AM1h20
    Madrid Barajas Airport
    11:45 AMPorto Airport
    441One-way
    0 transfers
  • RyanairFR 5482
    10:40 PM1h20
    Madrid Barajas Airport
    11:00 PMPorto Airport
    641One-way
    0 transfers

Find all the dates and times for this journey by train, bus, flight, and ferry .

Compare prices and tickets Prices for trains, buses and flights

Compare train, bus, and flight prices over the next three weeks. See the best deals at a glance, find the lowest fares, and choose the option that fits your budget.

Fri
Aug 21
Sat
Aug 22
Sun
Aug 23
Mon
Aug 24
Tue
Aug 25
Wed
Aug 26
Thu
Aug 27
Fri
Aug 28
Sat
Aug 29
Sun
Aug 30
Mon
Aug 31
Tue
Sep 01
Wed
Sep 02
Thu
Sep 03
Fri
Sep 04
Sat
Sep 05
Sun
Sep 06
Mon
Sep 07
Tue
Sep 08
Wed
Sep 09
Thu
Sep 10

More than 1,000 travel companies trust us to sell their tickets all in one place.

Trenitalia
Easyjet
Deutsche Bahn
SNCF

FAQs: Travel from Madrid to Porto

Travel to Porto easily. Whether you want fast, cheap or something entirely different, our travel experts have collected everything you need to know so you can find the best option from Madrid to Porto.

FAQs
There are 3 options to travel between Madrid and Porto including taking a train, bus, and flight.
The cheapest way to travel from Madrid to Porto is a bus with an average price of €30.

This is compared to other travel options from Madrid to Porto:

A bus is €44 less than a train for this route with tickets for a train from Madrid to Porto costing on average €74.

A bus is €116 less than a flight for this route with tickets for a flight from Madrid to Porto costing on average €146.

The fastest way to travel from Madrid to Porto is by flight with an average journey time of 3h 52m.

Other travel options to Porto take longer:

Train takes on average 5h 37m.

Bus takes on average 5h 53m.

The Madrid to Porto distance is approximately 421 km.
The average frequency per day from Madrid to Porto is:
  • Around 32 flights per day.
  • Around 24 buses per day.
  • Around 1 trains per day.

However, we recommend checking specific travel dates for your route between Madrid and Porto as scheduled services by train, bus, and flight can vary by season or day of the week.

These are the most popular departure and arrival points from Madrid to Porto:
  • Flights mostly depart from Madrid Barajas Airport and arrive in Porto Airport.
  • Buses mostly depart from Madrid, Estación Sur de Autobuses and arrive in Porto, Terminal Intermodal de Campanhã.
If finding a good deal is your main consideration for your trip from Madrid to Porto, then we'll help you find the best value travel companies for you:
  • Travel with Ryanair, Air Europa, Iberia, easyJet, Air Nostrum, TAP Portugal, Iberia Express, Vueling, PGA-Portugalia Airlines, British Airways to go to Porto by flight.
  • Travel with Alsa, Gipsyy, FlixBus, BlaBlaCar Bus, BlaBlaCar, Internorte, Rede Expressos, Gipsyy Portugal to go to Porto by bus.
  • Travel with AVE, Renfe ALVIA, Renfe, Renfe Viajeros to go to Porto by train.
Yes, there are direct services available from Madrid to Porto with the following travel companies:
  • 10 direct flights per day with Ryanair, Air Europa, Iberia, easyJet, Air Nostrum, Iberia Express.
  • 18 direct buses per day with Alsa, Gipsyy, FlixBus, BlaBlaCar Bus, BlaBlaCar, Rede Expressos, Gipsyy Portugal.
Omio customers who travel from Madrid to Porto often also extend their vacation to go to Lisbon, Paris, Vigo, Barcelona, Aveiro. Omio can help you plan your trip by finding the best connections between Porto and these popular destinations at a great price.
HomeTravelTravel to PortoHow to travel from Madrid to Porto

The Omio App Makes Travel Planning Easy

We’ll get you where you want to go. From live train updates to mobile tickets, our innovative app is the ideal way to plan and keep track of your travel.

ios-badge
android-badge
Hand With Phone