How to Get From Porto to Madrid by Bus, Train and Plane

View of Porto from Dom Luís I Bridge
Federica Gentile / Getty Images

If you're visiting Spain, it's a no-brainer to squeeze a side trip to Portugal into your vacation. Portugal is a lot cheaper than Spain and culturally quite different from its bigger neighbor.

Though most visitors head straight to Lisbon, the capital, for many the biggest lure is Porto, with its famous port wine production. There are some great day trips worth taking from Porto and connections are good for getting to Galicia in northern Spain.

The Easiest Way to Get There

Madrid and Porto are poorly connected by bus and train, with a ten-hour bus journey your only way by land. It doesn't even make a lot of sense to break up the journey either because the best options en route is Salamanca in Spain or Coimbra in Portugal, but journey times are still long. Both cities are famous university towns with some beautiful architecture and a vibrant student scene and are worthwhile stops in their own right, but they don't really save you anytime.

If there aren't any stops en route that interest you, a good suggestion would be to fly, either to Porto itself or to Lisbon and take the train from Lisbon to Porto.


There are regular flights from Porto to Madrid with Ryanair. Always be careful when booking with Ryanair, as costs can spiral out of control if you're not careful.

Porto airport is well connected to the city center by metro, making flying an easy option and a lot quicker than any other form of transport. 

Bus and Train

It's a ten-hour journey from Porto to Madrid. The route is run by ALSA. The bus stops in Salamanca and Aveiro on the way, both worthy stops if you don't want to take the entire journey non-stop.

There are no direct trains. If you have a train pass and want to travel by train, you'll need to change in Coimbra or go to Lisbon first.


The 600km (373 Mile) journey by car from Porto to Madrid takes about six hours. Take the A7, A24, A-52, A-6. These are toll roads. Go via Salamanca and consider a slight detour to Coimbra.

Was this page helpful?