The average train between Basel and Heidelberg takes 2h 23m and the fastest train takes 2h 19m. There is a train service every few hours from Basel 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 hourly between Basel and Heidelberg. The earliest departure is at 5:25 AM in the morning, and the last departure from Basel is at 11:27 PM which arrives into Heidelberg at 2:28 AM. All services require a transfer, and take on average 2h 23m. The schedules shown below are for the next available departures.

2h 19m • 1 change

2h 27m • 1 change

2h 20m • 1 change

2h 20m • 1 change

2h 19m • 1 change

2h 19m • 1 change

2h 27m • 1 change

2h 20m • 1 change

2h 19m • 1 change

2h 19m • 1 change

2h 27m • 1 change

2h 20m • 1 change
Want to know about travelling from Basel 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 Basel to Heidelberg. However, there are services departing from Basel station and arriving at Heidelberg station via Mannheim, Hauptbahnhof. The journey, including transfers, takes approximately 2h 23m.
Basel to Heidelberg train services, operated by Deutsche Bahn Intercity (DB IC), depart from Basel Bad Bf station.
Basel to Heidelberg train services, operated by Deutsche Bahn Intercity (DB IC), arrive at Mannheim, Hauptbahnhof station.
Book your Basel to Heidelberg train tickets online with Deutsche Bahn Intercity (DB IC), Deutsche Bahn Regio (DB Regional) and Trenitalia EuroCity.
The distance between Basel and Heidelberg is 221.5 km. The road distance is 266 km.
Deutsche Bahn Intercity (DB IC) operates a train from Basel Bad Bf to Mannheim, Hauptbahnhof hourly. Tickets cost €45–190 and the journey takes 1h 57m. Two other operators also service this route.