How to travel from Madrid to Porto

Tue, Oct 06
+ Add return
Travel by train, bus, flight with
azores airlines
AVE
Alsa Supra
BA Euroflyer
CitizenPlane
1,000+ more
azores airlines
AVE
Alsa Supra
BA Euroflyer
CitizenPlane
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 flight as it is the most popular option from Madrid to Porto among Omio's users. If you are prioritising price, take the train, with an average ticket price of €16 For those with little time, consider booking a flight, which has an average total journey time of 4h 35m. If you are seeking to minimise your carbon footprint, the train is your best option, with estimated CO2 emissions of 0.1 - 0.4kg. Average ticket prices depend on the travel mode: a train costs an average of €16, while a flight costs an average of €203.

Distance: 421 km

Compare flight with

Most popular
Flight
Train
Bus
Driving

€203

Average price

€16

Average price

Cheapest

€34

Average price

€93

Average price

(fuel + tolls)

4h 35m

Average total duration

Fastest

2h 35m

Onboard

+

2h 0m

Additional time*

7h 4m

Average total duration

6h 34m

Onboard

+

30m

Additional time*

10h 20m

Average total duration

9h 50m

Onboard

+

30m

Additional time*

5h 53m

Average total duration

(door-to-door)

1.3 - 2.5kg

CO2 emissions

0.1 - 0.4kg

CO2 emissions

Lowest

0.4 - 1.1kg

CO2 emissions

-

CO2 emissions

TAP Portugal

Most popular airline

AVE

Most popular train company

Alsa

Most popular bus company

Your own car or car rental

Direct Options

Direct Options

Direct Options

Direct Options

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

The cheapest way to travel from Madrid to Porto is a train with an average price of €16.

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

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

A train is €187 less than a flight for this route with tickets for a flight from Madrid to Porto costing on average €203.

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

Other travel options to Porto take longer:

Train takes on average 7h 4m.

Bus takes on average 10h 20m.

It's helpful to compare your options as there are 3 ways to travel between Madrid and Porto including taking a train, bus, and flight.

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.

  • AlsaNormal
    11:45 PM7h29
    Madrid, Estación Sur de Autobuses
    6:14 AMPorto, Terminal Intermodal de Campanhã
    €251One-way
    0 transfers

Cheapest

  • AlsaNormal
    11:45 PM7h29
    Madrid, Estación Sur de Autobuses
    6:14 AMPorto, Terminal Intermodal de Campanhã
    €251One-way
    0 transfers

Fastest

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

Other options

  • AVE04515+Renfe00422
    11:17 AM9h18
    Madrid Chamartín
    7:35 PMPorto - Campanhã
    €681One-way
    1 transfer
  • AVE04475+Renfe00422
    8:26 AM12h09
    Madrid Chamartín
    7:35 PMPorto - Campanhã
    €681One-way
    1 transfer
  • AlsaNormal
    11:45 PM7h50
    Madrid, Estación Sur de Autobuses
    6:35 AMMaia, Porto (Aeroporto Sa Carneiro)
    €251One-way
    0 transfers
  • AlsaNormal
    10:00 AM7h54
    Madrid, Estación Sur de Autobuses
    4:54 PMPorto, Terminal Intermodal de Campanhã
    €251One-way
    0 transfers
  • AlsaNormal
    4:15 PM7h59
    Madrid, Estación Sur de Autobuses
    11:14 PMPorto, Terminal Intermodal de Campanhã
    €251One-way
    0 transfers
  • RyanairFR 572
    1:15 PM1h20
    Madrid Barajas Airport
    1:35 PMPorto Airport
    €1401One-way
    0 transfers
  • RyanairFR 5484
    9:05 AM1h20
    Madrid Barajas Airport
    9:25 AMPorto Airport
    €1481One-way
    0 transfers
  • RyanairFR 5482
    8:40 PM1h20
    Madrid Barajas Airport
    9:00 PMPorto Airport
    €2181One-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.

Mon
Oct 05
Tue
Oct 06
Wed
Oct 07
Thu
Oct 08
Fri
Oct 09
Sat
Oct 10
Sun
Oct 11
Mon
Oct 12
Tue
Oct 13
Wed
Oct 14
Thu
Oct 15
Fri
Oct 16
Sat
Oct 17
Sun
Oct 18
Mon
Oct 19
Tue
Oct 20
Wed
Oct 21
Thu
Oct 22
Fri
Oct 23
Sat
Oct 24
Sun
Oct 25

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 train with an average price of €16.

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

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

A train is €187 less than a flight for this route with tickets for a flight from Madrid to Porto costing on average €203.

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

Other travel options to Porto take longer:

Train takes on average 7h 4m.

Bus takes on average 10h 20m.

The Madrid to Porto distance is approximately 421 km.
The average frequency per day from Madrid to Porto is:
  • Around 37 flights per day.
  • Around 27 buses per day.
  • Around 2 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.
  • Trains mostly depart from Madrid Chamartín and arrive in Porto - Campanhã.
  • 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 Alsa Supra, Internorte, FlixBus, Alsa, BlaBlaCar Bus, Gipsyy to go to Porto by bus.
  • Travel with AVE, Renfe to go to Porto by train.
  • Travel with azores airlines, BA Euroflyer, CitizenPlane, Air Europa, Norwegian Air Shuttle, Vueling, Royal Air Maroc, Malta Air, British Airways, TAP Portugal, Ryanair, Iberia to go to Porto by flight.
Yes, there are direct services available from Madrid to Porto with the following travel companies:
  • 19 direct buses per day with FlixBus, Alsa, BlaBlaCar Bus, Gipsyy.
  • 10 direct flights per day with CitizenPlane, Air Europa, Malta Air, Ryanair, Iberia.
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