Find a train from Porto to Madrid

These train, bus and flight companies trust us


Find the cheapest ticket for your trip

Journey details

Best price 21.13$
Journey duration 2 h 27 min
Connections per day 36
First departure: 00:45
Last departure: 20:47
Distance 421km

Compare the best train prices from Porto to Madrid

Finding the perfect train connection has never been so easy: thanks to virail, you will be able to compare hundreds of offers at the same time just by inserting the date of your trip. Through the price and departure filters, you will have the possibility to restrict the results and find the perfect solution. The booking takes place on the provider's website, to which you will be automatically redirected.

Which companies take you from Porto to Madrid by train?

To get to Madrid by train, you can rely on Cppt, only an example among all our partners.

What is the price of train tickets from Porto to Madrid?

If you have the possibility to book in advance, you will be likely to find cheap train tickets from Porto to Madrid for 18,20 €. In case you can't plan in advance, train tickets to Madrid cost on average 24,50 €.

Ticket price Porto - Madrid every day

Today Tomorrow In 2 days In 3 days In 4 days In 5 days In 6 days
23 $36 $34 $37 $34 $37 $37 $
29 $23 $88 $23 $17 $23 $29 $
More 1 $ More 1 $ More 1 $1 $

Trains from Porto to Madrid


If the train timetable doesn't fit in your schedule or budget, bus and carpooling can provide you some time and price alternatives, without substantially changing the duration of the journey.

In which stations can you take the train to Madrid and where will you arrive?

The trains to Madrid can leave from Porto - Campanha or Porto - Sao Bento and arrive at Lisboa - Oriente.

What time do the trains to Madrid leave and how long is the journey?

The average duration of the journey is 3 hours and 27 minutes, but the fastest connections take you to Madrid in 2 hours. The first train leaves from Porto at 00:05, while the last one leaves at 19:05.

virail lets you search and compare times and prices of any transports from one city to another