Travel Information
Compare train, bus, and flight for Porto to Madrid
Omio recommends booking the flight as it is the most popular option from Porto to Madrid among Omio's users. If you are prioritising price, take the train, with an average ticket price of $20 For those with little time, consider booking a flight, which has an average total journey time of 4h 27m. 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 $20, while a flight costs an average of $241.
Distance: 261 miles (421 km)
Compare flight with
Most popular Flight | Train | Bus | Driving |
|---|---|---|---|
$241 Average price | $20 Average price Cheapest | $42 Average price | $137 Average price (fuel + tolls) |
4h 27m Average total duration Fastest 2h 27m Onboard + 2h 0m Additional time* | 6h 58m Average total duration 6h 28m Onboard + 30m Additional time* | 9h 58m Average total duration 9h 28m Onboard + 30m Additional time* | 5h 38m 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 |
![]() Most popular airline | ![]() Most popular train company | ![]() 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.
This is compared to other travel options from Porto to Madrid:
A train is $22 less than a bus for this route with tickets for a bus from Porto to Madrid costing on average $42.
A train is $221 less than a flight for this route with tickets for a flight from Porto to Madrid costing on average $241.
Other travel options to Madrid take longer:
Train takes on average 6h 58m.
Bus takes on average 9h 58m.
You'll arrive about 3h 11m sooner (2h 27m by flight vs 5h 38m by car). Tickets start at around $241 compared to roughly $137 in fuel and tolls — a bit more, but you get time back and avoid a long drive.
Driving makes more sense if you're travelling as a group, want flexibility on timing, or plan to stop en route.
Travel optionsfrom Porto to Madrid
How to get from Porto to Madrid by train, bus or flight.
Our recommendation
The best way to travel from Porto to Madrid is by taking a bus because it’s the best combination of price and speed.
9:45 AM7h59Porto, Terminal Intermodal de Campanhã6:44 PMMadrid, Estación Sur de Autobuses$211One-way0 transfers
Cheapest
9:45 AM7h59Porto, Terminal Intermodal de Campanhã6:44 PMMadrid, Estación Sur de Autobuses$211One-way0 transfers
Fastest
UX11428:10 PM1h10Porto Airport10:20 PMMadrid Barajas Airport$1541One-way0 transfers
Other options
00421+
043848:10 AM12h10Porto - Campanhã9:20 PMMadrid Chamartín$1071One-way1 transfer
00421+
042548:10 AM8h27Porto - Campanhã5:37 PMMadrid Chamartín$1311One-way1 transfer
9:45 AM8h30Porto, Terminal Intermodal de Campanhã7:15 PMMadrid, Terminal de autobuses T4 (Aeropuerto de Madrid)$211One-way0 transfers
Normal9:45 AM7h55Porto, Terminal Intermodal de Campanhã6:40 PMMadrid, Estación Sur de Autobuses$221One-way0 transfers
Normal12:45 PM7h59Porto, Terminal Intermodal de Campanhã9:44 PMMadrid, Estación Sur de Autobuses$221One-way0 transfers
FR 54839:30 PM1h15Porto Airport11:45 PMMadrid Barajas Airport$921One-way0 transfers
TP1935 · TP101010:30 PM10h35Porto Airport10:05 AMMadrid Barajas Airport$1091One-way1 transfer
TP1933 · TP10109:15 PM11h50Porto Airport10:05 AMMadrid Barajas Airport$1091One-way1 transfer
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.
Sep 28
Sep 29
Sep 30
Oct 01
Oct 02
Oct 03
Oct 04
Oct 05
Oct 06
Oct 07
Oct 08
Oct 09
Oct 10
Oct 11
Oct 12
Oct 13
Oct 14
Oct 15
Oct 16
Oct 17
Oct 18
How to Travel from Porto to Madrid?
If you wish to travel from Porto to Madrid, you will want to know the various modes of transportation to choose from. The two ways to travel from Porto to Madrid are by bus and by plane, both providing a convenient route to reach your destination. There are about 13 buses that leave every day, and the trip takes about 10 hours and 47 minutes on average. There are about 40 daily flights from Porto to Madrid, with an average flight time of 3 hours and 20 minutes.
What is the Cheapest Way To Get from Porto to Madrid?
The cheapest way to travel from Porto to Madrid, if booked at least a few weeks before the departure date, is by plane. On the other hand, the bus will be the cheapest mode of transportation if tickets are booked close to the travel date. It is also important to consider the date of the departure. During the weekk the flights tend to be more affordable from Monday to Thursday and a bit more expensive from Friday to Sunday. The bus prices tend to fluctuate around the same price regardless of date.
What is the Fastest Way to Travel from Porto to Madrid?
The fastest mode of transportation from Porto to Madrid is by plane. The plane ride averages around 3 hours and 20 minutes, with the fastest direct journey taking just 1 hour and 15 minutes. Meanwhile, the fastest journey time by bus is around 9 hours. Flights usually depart from the Porto Airport (OPO) and arrive at the Madrid Barajas Airport (MAD). All the airports are located a short drive from the city centers.
Find and Book with Omio the Best Tickets from Porto to Madrid
The services provided by the Omio app and website enable travelers to search, filter and book tickets for all of the methods of transportation that are available between Porto to Madrid.
Travel from Porto to Madrid by Bus
Traveling to Madrid from Porto by bus perfect if you wish to enjoy the scenery or bring bulkier and heavier luggage with you. The average travel time with the bus is usually 10 hours and 47 minutes, with the fastest journey time taking only 8 hours and 30 minutes. The distance between Madrid and Porto is around 262 miles. There are usually 13 buses that leave daily from either Campo 24 de Agosto or Interface Casa de Musica in Porto, and arrive into the Estacion Sur, Barajas Airport T4 or Av. America stations in Madrid. These routes are all catered by Eurolines, Rede Expressos, Alsa, Citi Express, and FlixBus.
Travel from Porto to Madrid by Plane
The fastest - and usually the most affordable - method of transportation from Porto to Madrid is by plane. You will be able to find at least 40 flights for this route each day, 10 of which will be direct. Although the average journey time is 3 hours and 20 minutes, the fastest direct routes will take only 1 hour and 15 minutes. Flights only leave from the Porto Airport (OPO) and arrive directly at the Madrid Barajas Airport (MAD), both of which are easily connected to the city center with public transport. The flights are operated by RyanAir, Air Europa, Iberia, TAP Air Portugal, Air France, KLM and Turkish Airlines.
How to get from Porto to Madrid
The Best Way According to our Users
More than 1,000 travel companies trust us to sell their tickets all in one place.
FAQs: Travel from Porto to Madrid
Travel to Madrid 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 Porto to Madrid.

This is compared to other travel options from Porto to Madrid:
A train is $22 less than a bus for this route with tickets for a bus from Porto to Madrid costing on average $42.
A train is $221 less than a flight for this route with tickets for a flight from Porto to Madrid costing on average $241.
Other travel options to Madrid take longer:
Train takes on average 6h 58m.
Bus takes on average 9h 58m.
- Around 37 flights per day.
- Around 25 buses per day.
- Around 2 trains per day.
However, we recommend checking specific travel dates for your route between Porto and Madrid as scheduled services by train, bus, and flight can vary by season or day of the week.
- Flights mostly depart from Porto Airport and arrive in Madrid Barajas Airport.
- Trains mostly depart from Porto - Campanhã and arrive in Madrid Chamartín.
- Buses mostly depart from Porto, Terminal Intermodal de Campanhã and arrive in Madrid, Estación Sur de Autobuses.
- Travel with azores airlines, BA Euroflyer, CitizenPlane, Air Europa, BA Cityflyer, Norwegian Air Shuttle, Vueling, Royal Air Maroc, British Airways, TAP Portugal, Ryanair, Iberia to go to Madrid by flight.
- Travel with Rede Expressos, Internorte, FlixBus, Alsa, BlaBlaCar Bus, Gipsyy to go to Madrid by bus.
- Travel with AVE to go to Madrid by train.
- 10 direct flights per day with CitizenPlane, Air Europa, Ryanair, Iberia.
- 19 direct buses per day with FlixBus, Alsa, BlaBlaCar Bus, Gipsyy.
Travelling from Porto to Madrid: related information
Here are some other resources that might have the information you need
