The average train between Portsmouth and Heidelberg takes 9h 52m and the fastest train takes 7h 56m. The train service runs several times per day from Portsmouth to Heidelberg. 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 every 4 hours between Portsmouth and Heidelberg. The earliest departure is at 4:35 AM at night, and the last departure from Portsmouth is at 6:37 PM which arrives into Heidelberg at 10:22 AM. All services require a transfer at London Waterloo Station and take an average of 9h 52m. The schedules shown below are for the next available departures.




10h 6m • 4 changes




9h 58m • 4 changes




9h 21m • 4 changes




8h 56m • 4 changes




9h 24m • 4 changes




9h 58m • 4 changes




9h 21m • 4 changes




8h 56m • 4 changes




9h 21m • 4 changes




9h 55m • 4 changes




9h 21m • 4 changes




10h 22m • 4 changes




10h 28m • 4 changes




9h 48m • 4 changes




9h 23m • 4 changes




10h 5m • 4 changes




9h 24m • 4 changes




9h 58m • 4 changes




9h 21m • 4 changes




9h 39m • 4 changes




10h 6m • 4 changes




9h 58m • 4 changes




9h 21m • 4 changes




9h 39m • 4 changes
Want to know about travelling from Portsmouth to Heidelberg? 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 Heidelberg. However, there are services departing from Portsmouth station and arriving at Heidelberg station via London Waterloo. The journey, including transfers, takes approximately 9h 52m.
Portsmouth to Heidelberg train services, operated by South Western Railway, depart from Portsmouth & Southsea station.
Portsmouth to Heidelberg train services, operated by South Western Railway, arrive at Heidelberg, Hauptbahnhof station.
Book your Portsmouth to Heidelberg train tickets online with South Western Railway, London Underground (Tube) and 4 other operators.
The distance between Portsmouth and Heidelberg is 714 km. The road distance is 1,144 km.
You can take a train from Portsmouth & Southsea to Heidelberg, Hauptbahnhof via London Waterloo Station, Waterloo station, Euston station, London St Pancras Intl, Paris Nord, Paris Est, and Karlsruhe Hauptbahnhof in around 9h.