Bonn to Heidelberg by train Find train times and tickets

  • First train
    07:14
  • Last train
    19:14
  • Avg changes
    0
  • Fastest journey
    2hr 20m

Travelling from Bonn to Heidelberg by train

The fastest trains from Bonn to Heidelberg take around 2 hours and 20 minutes, covering a distance of approximately 186 kilometres. There are frequent services on the rail route between Bonn and Heidelberg.

Direct trains run between Bonn and Heidelberg.

We usually find around 9 direct trains on the route from Bonn to Heidelberg every weekday.

Trains usually run with a similar frequency on weekends. The duration is normally about 2 hours and 20 minutes, whatever time you make the journey.

On weekdays the earliest direct train to Heidelberg is usually scheduled to depart Bonn around 07:14 and the last train is around 19:14. This is the same at the weekend.

Route map is indicative only and may differ from the optimal route. Actual routes will be displayed when searching.

When to book Bonn to Heidelberg train tickets?

Trains in Germany usually open for booking around 6 months in advance. If booking is not yet open for your dates then you can set a booking alert to receive an email on the day that the cheapest tickets are released for your journey from Bonn to Heidelberg by train.

Which trains operate between Bonn and Heidelberg?

Intercity is the rail operator that operates on the route from Bonn to Heidelberg.

You can check which train you’ll be travelling on by looking for the train name in search results.

Find journey information for Heidelberg to Bonn

Route map is indicative only and may differ from the optimal route. Actual routes will be displayed when searching.

Other journeys to Heidelberg View all journeys to Heidelberg

Search accommodation in Heidelberg

Airbnb
Country guide

Trains to Germany

Read our country guide

Child and youth passengers

The definition of "Child" and "Youth" varies by country and rail operator. This is why we ask for the age of young passengers.

Sometimes children below a certain age can travel without a seat for free. If you want to guarantee a seat for child passengers, enter '6' as the age of the child.

Read more about child and youth passenger ages. See also youth discounts and railcards.

Log in / Register

  1. We'll assume you've read
    our Terms of Service.