The average train between Weymouth and Portsmouth takes 2h 57m and the fastest train takes 2h 26m. There is a train service every few hours from Weymouth to Portsmouth. 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 Weymouth and Portsmouth. The earliest departure is at 5:55 AM in the morning, and the last departure from Weymouth is at 10:10 PM which arrives into Portsmouth at 7:22 AM. All services require a transfer, and take on average 2h 57m. The schedules shown below are for the next available departures.

2h 27m • 1 change

3h 1m • 1 change

2h 52m • 1 change

3h 2m • 1 change

2h 27m • 1 change

3h 1m • 1 change

2h 52m • 1 change

3h 2m • 1 change

2h 27m • 1 change

3h 1m • 1 change

2h 52m • 1 change

3h 2m • 1 change
Want to know about travelling from Weymouth to Portsmouth? 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 Weymouth to Portsmouth. However, there are services departing from Weymouth station and arriving at Portsmouth station via Southampton Central. The journey, including transfers, takes approximately 2h 57m.
Weymouth to Portsmouth train services, operated by South Western Railway, depart from Weymouth station.
Weymouth to Portsmouth train services, operated by South Western Railway, arrive at Portsmouth & Southsea station.
Book your Weymouth to Portsmouth train tickets online with South Western Railway and Great Western Railway (GWR).
The distance between Weymouth and Portsmouth is 98.5 km. The road distance is 141 km.
You can take a train from Weymouth to Portsmouth & Southsea via Southampton Central in around 2h 35m.