The average train between Perpignan and Porto takes 24h 21m and the fastest train takes 23h 18m. The train service runs several times per day from Perpignan to Porto. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Trains run twice daily between Perpignan and Porto. The earliest departure is at 11:12 AM in the morning, and the last departure from Perpignan is at 8:07 PM which arrives into Porto at 7:35 PM. All services require a transfer at Barcelona-Sants and take an average of 24h 21m. The schedules shown below are for the next available departures.
Arrives next day





24h 12m • 5 changesArrives next day





24h 28m • 5 changesArrives next day





24h 12m • 5 changesArrives next day





24h 28m • 5 changesArrives next day





24h 12m • 5 changesArrives next day





24h 28m • 5 changesArrives next day





23h 18m • 5 changesArrives next day





26h 37m • 5 changesWant to know about travelling from Perpignan to Porto? We have put together a list of the most frequently asked questions from our users such as: What is the cheapest mode of transport? What is the quickest option? How much do tickets usually cost? and many more.
No, there is no direct train from Perpignan to Porto. However, there are services departing from Perpignan station and arriving at Porto station via Barcelona-Sants. The journey, including transfers, takes approximately 24h 21m.
Perpignan to Porto train services, operated by Renfe Viajeros, depart from Perpignan station.
Perpignan to Porto train services, operated by Renfe Viajeros, arrive at Porto Campanha station.
Book your Perpignan to Porto train tickets online with Renfe Viajeros, Renfe AVE and 4 other operators.
The distance between Perpignan and Porto is 966.6 km. The road distance is 1,590 km.
You can take a train from Perpignan to Porto Campanha via Barcelona-Sants, Madrid-Puerta De Atocha-Almudena Grandes, Madrid-Atocha Cercanías, Madrid Chamartín, Pontevedra, and Redondela De Galicia in around 13h 58m.