The average train between Barnes and Portsmouth takes 2h 29m and the fastest train takes 1h 54m. There is an hourly train service from Barnes 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 Barnes and Portsmouth. The earliest departure is at 12:06 AM at night, and the last departure from Barnes is at 11:02 PM which arrives into Portsmouth at 1:20 AM. All services require a transfer, and take on average 2h 29m. The schedules shown below are for the next available departures.

1h 57m • 1 change

2h 40m • 1 change

2h 26m • 1 change

2h 41m • 1 change

7h 9m • 1 change

2h 21m • 1 change

1h 57m • 1 change

2h 2m • 1 change

7h 9m • 1 change

2h 21m • 1 change

1h 57m • 1 change

2h 2m • 1 change
Want to know about travelling from Barnes 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 Barnes to Portsmouth. However, there are services departing from Barnes station and arriving at Portsmouth station via London Waterloo. The journey, including transfers, takes approximately 2h 29m.
Barnes to Portsmouth train services, operated by South Western Railway, depart from Barnes Bridge station.
Barnes to Portsmouth train services, operated by South Western Railway, arrive at Portsmouth & Southsea station.
Book your Barnes to Portsmouth train tickets online with South Western Railway.
The distance between Barnes and Portsmouth is 95.3 km. The road distance is 130 km.
You can take a train from Barnes Bridge to Portsmouth & Southsea via London Waterloo in around 2h 5m.