The average train between Portsmouth and Perth takes 8h 46m and the fastest train takes 7h 32m. There is a train service every few hours from Portsmouth to Perth. 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 Portsmouth and Perth. The earliest departure is at 4:35 AM at night, and the last departure from Portsmouth is at 9:38 PM which arrives into Perth at 11:48 AM. All services require a transfer at London Waterloo Station and take an average of 8h 46m. The schedules shown below are for the next available departures.



8h 27m • 3 changes



7h 52m • 3 changes



8h 34m • 3 changes



8h 13m • 3 changes



8h 28m • 3 changes



8h 19m • 3 changes



8h 31m • 3 changes



8h 27m • 3 changes



8h 28m • 3 changes



8h 19m • 3 changes



8h 31m • 3 changes



8h 27m • 3 changes
Want to know about travelling from Portsmouth to Perth? 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 Portsmouth to Perth. However, there are services departing from Portsmouth station and arriving at Perth station via London Waterloo. The journey, including transfers, takes approximately 8h 46m.
Portsmouth to Perth train services, operated by South Western Railway, depart from Portsmouth & Southsea station.
Portsmouth to Perth train services, operated by South Western Railway, arrive at Perth station.
Book your Portsmouth to Perth train tickets online with South Western Railway, London Underground (Tube) and 3 other operators.
The distance between Portsmouth and Perth is 641 km. The road distance is 840 km.
You can take a train from Portsmouth & Southsea to Perth via London Waterloo Station, Waterloo station, Euston station, King's Cross, and Edinburgh Waverley in around 8h 29m.