The average bus between Mainz and Heidelberg takes 2h and the fastest bus takes 1h 57m. The bus service runs several times per day from Mainz 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.
Buses run every 4 hours between Mainz and Heidelberg. The earliest departure is at 4:24 AM at night, and the last departure from Mainz is at 8:33 PM which arrives into Heidelberg at 10:30 PM. All services require a transfer, and take on average 2h. The schedules shown below are for the next available departures.

1h 57m • 1 change

1h 57m • 1 change

1h 57m • 1 change

1h 57m • 1 change

1h 57m • 1 change

1h 57m • 1 change

1h 57m • 1 change

1h 57m • 1 change

1h 57m • 1 change

1h 57m • 1 change

1h 57m • 1 change

1h 57m • 1 change

1h 57m • 1 change

1h 57m • 1 change

1h 57m • 1 change

1h 57m • 1 change

1h 57m • 1 change

1h 57m • 1 change

1h 57m • 1 change

1h 57m • 1 change
Want to know about travelling from Mainz 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 bus from Mainz to Heidelberg. However, there are services departing from Mainz station and arriving at Heidelberg station via Frankfurt. The journey, including transfers, takes approximately 2h.
Mainz to Heidelberg bus services, operated by DB Bus, depart from Ginsheim-Gustavsburg-Gustavsburg Am Alten Fährhaus station.
Mainz to Heidelberg bus services, operated by DB Bus, arrive at Heidelberg, Hilton Hotel station.
Book your Mainz to Heidelberg bus tickets online with DB Bus and HEAG mobilo GmbH.
The distance between Mainz and Heidelberg is 70.6 km. The road distance is 104 km.
You can take a bus from Ginsheim-Gustavsburg-Gustavsburg Am Alten Fährhaus to Heidelberg, Hilton Hotel via Frankfurt in around 2h 44m.