The average train between Walsall and Perth takes 7h 46m and the fastest train takes 6h 4m. There is a train service every few hours from Walsall 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 Walsall and Perth. The earliest departure is at 6:32 AM in the morning, and the last departure from Walsall is at 11:32 PM which arrives into Perth at 12:18 PM. All services require a transfer at Birmingham New Street and take an average of 7h 46m. The schedules shown below are for the next available departures.



6h 58m • 3 changes



6h 56m • 3 changes



6h 57m • 3 changes



7h 14m • 3 changes



6h 4m • 3 changes



6h 56m • 3 changes



7h 2m • 3 changes



6h 43m • 3 changes



6h 4m • 3 changes



6h 56m • 3 changes



7h 2m • 3 changes



6h 43m • 3 changes



6h 4m • 3 changes



7h 15m • 3 changes



7h 2m • 3 changes



6h 44m • 3 changes
Want to know about travelling from Walsall 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 Walsall to Perth. However, there are services departing from Walsall station and arriving at Perth station via Wigan North Western. The journey, including transfers, takes approximately 7h 46m.
Walsall to Perth train services, operated by West Midlands Trains, depart from Birmingham New Street station.
Walsall to Perth train services, operated by West Midlands Trains, arrive at Perth station.
Book your Walsall to Perth train tickets online with West Midlands Trains, Avanti West Coast and 2 other operators.
The distance between Walsall and Perth is 433.8 km. The road distance is 590 km.
You can take a train from Walsall to Perth via Birmingham New Street, Wigan North Western, Glasgow Central, and Glasgow Queen Street in around 7h 35m.