The average train between Porto and Roma takes 3h 16m and the fastest train takes 2h 55m. There is a train service every few hours from Porto to Roma. 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 hourly between Porto and Roma. The earliest departure is at 1:08 AM at night, and the last departure from Porto is at 8:40 PM which arrives into Roma at 12:15 AM. All services require a transfer at Lisboa Oriente and take an average of 3h 16m. The schedules shown below are for the next available departures.

5h 7m • 1 change

3h 5m • 1 change

3h 5m • 1 change

3h 30m • 1 change

3h 5m • 1 change

3h 5m • 1 change

3h 30m • 1 change

3h 30m • 1 change

4h 57m • 1 change

2h 55m • 1 change

2h 55m • 1 change

3h 20m • 1 change
Want to know about travelling from Porto to Roma? 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 Porto to Roma. However, there are services departing from Porto station and arriving at Roma station via Lisboa Oriente. The journey, including transfers, takes approximately 3h 16m.
Porto to Roma train services, operated by Comboios de Portugal, depart from Porto Campanha station.
Porto to Roma train services, operated by Comboios de Portugal, arrive at Lisboa Oriente station.
The distance between Porto and Roma is 270.8 km. The road distance is 337 km.
Comboios de Portugal operates a train from Porto Campanha to Lisboa Oriente every 30 minutes. Tickets cost €35–65 and the journey takes 2h 42m.