How to Get from Lisbon to Porto by Train, Bus, Plane and Car

Porto is 300 kilometres / 186 miles north of Lisbon but good flight, road and rail connections make it very easy to get to.

If you’re wondering whether you can visit Porto as a day trip from Lisbon, it’s doable if you plan carefully. The city is smaller than Lisbon, and most sights are within walking distance. However, if you have time, Porto deserves at least one night’s stay – its historic centre is a UNESCO World Heritage Centre.

The atmospheric Cais da Ribeira riverfront, the unique Dom Luís bridge, the beautiful São Bento station, and the port wine lodges on the opposite side of the Douro River, are some of the highlights of Portugal’s second city (check out our travel guide for visiting Porto). Here you can find out how to get from Lisbon to Porto.

Porto across the Douro River

By train

There are frequent trains from Lisbon to Porto. The service is operated by CP. Choose the fast train, called Alfa Pendular (AP), which runs every hour or so. The trip takes about three hours.

In Lisbon, trains leave from Santa Polónia and Oriente stations. Santa Polónia is the old central station, while Oriente is the modern station in Parque das Nações, close to the airport. You can get to both stations by metro (blue and red lines). In Porto, you arrive at Campanhã station and should take another train to São Bento station in central Porto (this journey is included in your Alfa Pendular ticket).

Tickets can be booked on CP’s website up to 60 days in advance. You can get a promo ticket in second class for around €10 one way, but this price may be hard to get as it is only available for travel during certain hours and booked 5 or more days in advance. A regular ticket will cost you anything from €25 to €32 one way.

Tickets and schedules: www.cp.pt

By bus

The bus between Lisbon and Porto takes about three hours and 30 minutes. Buses run every hour and a half throughout the day, and the service is carried out by Rede Expressos / Renex.

In Lisbon, you can take the the bus to Porto at either Sete Rios bus terminal (metro’s blue line) or Oriente station (metro’s red line). The bus terminal in Porto is located about 10 minutes walking distance from Bolhão and the city’s main attractions.

Tickets are about €17 one way, and all trips can be booked on Rede Expressos’ website up to 30 days in advance.

Tickets and schedules: www.rede-expressos.pt

By plane

Several daily flights, carried out by Ryanair and TAP, connect the two major Portuguese cities. A flight from Lisbon to Porto takes 55 minutes. During flash sales, return flights can be as cheap as €20, which is lower than the usual train and bus fares. The regular fare ranges between €30 – 50.

Overall, expect the journey to take around 3 hours. This includes at least 30 minutes before departure at your boarding gate, as well as the time spent getting to and from airports. Lisbon Airport is 10km from the city centre, and it takes 35 minutes by metro to get there. Porto Airport is 12km from the Bolhão metro station in the city centre, and it takes about 40 minutes to get there (unlike Lisbon metro, Porto metro runs mostly on the surface).

By car

The journey from Lisbon to Porto takes about three hours on the A1 motorway. Tolls from Lisbon to Porto can be quite expensive. Expect to pay around €22 just in toll fares.

If you want to hire a car, check out our page on car rental in Lisbon, which includes advice on where to hire a car in the city, some car rental companies to compare prices from, and things to know when hiring a car in Portugal – for instance, why you should get a Via Verde toll transponder from your rental car company.