The average train between Heidelberg and Schaffhausen takes 3h 52m and the fastest train takes 3h 9m. The train service runs several times per day from Heidelberg to Schaffhausen. 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 4 times a day between Heidelberg and Schaffhausen. The earliest departure is at 3:40 AM at night, and the last departure from Heidelberg is at 7:13 PM which arrives into Schaffhausen at 10:45 PM. All services require a transfer, and take on average 3h 52m. The schedules shown below are for the next available departures.

5h 5m • 1 change
4h 30m • 1 change
3h 9m • 1 change
3h 9m • 1 change
4h 30m • 1 change
3h 9m • 1 change
3h 9m • 1 change
3h 32m • 1 change
5h 5m • 1 change
4h 30m • 1 change
3h 9m • 1 change
3h 9m • 1 changeWant to know about travelling from Heidelberg to Schaffhausen? 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 Heidelberg to Schaffhausen. However, there are services departing from Heidelberg, Hauptbahnhof station and arriving at Schaffhausen station via Hauptbahnhof station. The journey, including transfers, takes approximately 3h 52m.
Heidelberg to Schaffhausen train services, operated by Deutsche Bahn Intercity (DB IC), depart from Heidelberg, Hauptbahnhof station.
Heidelberg to Schaffhausen train services, operated by Deutsche Bahn Intercity (DB IC), arrive at Schaffhausen station.
Book your Heidelberg to Schaffhausen train tickets online with Omio.
The distance between Heidelberg and Schaffhausen is 190.2 km. The road distance is 242 km.
You can take a train from Heidelberg, Hauptbahnhof to Schaffhausen via Hauptbahnhof in around 4h 4m.