There are 6 ways to get from Geneva to Heidelberg by plane, train, bus, or car
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly to Frankfurt, train
best- Fly from Geneva International Airport (GVA) to Frankfurt (FRA)plane GVA - FRA
- Take the train from Frankfurt to Mannheim, Hauptbahnhoftrain
2h 33m€133–330Bus
cheapest- Take the bus from Geneva to Karlsruhe central train stationbus FlixBus 122 / ...
- Take the bus from Karlsruhe central train station to Heidelberg Pre Waypointbus FlixBus 108 / ...
9h 27m€38–73Train
- Take the train from Genève to Renens VDtrain Ic1 / ...
- Take the train from Renens VD to Basel SBBtrain
- Take the train from Basel SBB to Karlsruhe Hauptbahnhoftrain 12 / ...
- Take the train from Karlsruhe Hauptbahnhof to Heidelberg, Hauptbahnhoftrain S3 / ...
6h 45m€124–417Drive 493.2 km
- Drive from Geneva to Heidelbergcar 493.2 km
4h 36m€87–126Fly to Stuttgart Airport, train
- Fly from Geneva International Airport (GVA) to Stuttgart Airport (STR)plane GVA - STR
- Take the train from Hauptbahnhof to Heidelberg, Hauptbahnhoftrain
4h 30m€130–350Bus via Freiburg im Breisgau
- Take the bus from Geneva to Freiburgbus FlixBus 122 / ...
- Take the bus from Freiburg to Heidelberg Pre Waypointbus FlixBus N1720 / ...
11h 29m€40–64
Geneva to Heidelberg by train
Questions & Answers
The cheapest way to get from Geneva to Heidelberg is to bus via Freiburg im Breisgau which costs €40 - €65 and takes 11h 29m.
The fastest way to get from Geneva to Heidelberg is to fly and train which takes 2h 33m and costs €130 - €330.
No, there is no direct bus from Geneva to Heidelberg. However, there are services departing from Geneva and arriving at Heidelberg Pre Waypoint via Karlsruhe central train station. The journey, including transfers, takes approximately 9h 27m.
No, there is no direct train from Geneva to Heidelberg. However, there are services departing from Genève and arriving at Heidelberg, Hauptbahnhof via Renens VD, Basel SBB and Karlsruhe Hauptbahnhof. The journey, including transfers, takes approximately 6h 45m.
The distance between Geneva and Heidelberg is 552 km. The road distance is 493.2 km.
The best way to get from Geneva to Heidelberg without a car is to train which takes 6h 45m and costs €120 - €420.
It takes approximately 2h 33m to get from Geneva to Heidelberg, including transfers.
Geneva to Heidelberg bus services, operated by FlixBus, depart from Geneva station.
Geneva to Heidelberg train services, operated by Swiss Federal Railways (SBB CFF FFS), depart from Genève station.
The best way to get from Geneva to Heidelberg is to train which takes 6h 45m and costs €120 - €420. Alternatively, you can bus, which costs €35 - €75 and takes 9h 27m.
What companies run services between Geneva, Switzerland and Heidelberg, Germany?
You can take a train from Genève to Heidelberg, Hauptbahnhof via Renens VD, Basel SBB, and Karlsruhe Hauptbahnhof in around 6h 45m. Alternatively, you can take a bus from Geneva to Heidelberg Pre Waypoint via Karlsruhe central train station in around 9h 27m.
- Website
- swiss.com
Flights from Geneva International Airport to Frankfurt
- Ave. Duration
- 1h 16m
- When
- Every day
- Estimated price
- €100–440
Flights from Geneva International Airport to Frankfurt via Zurich
- Ave. Duration
- 3h
- When
- Every day
- Estimated price
- €140–450
Flights from Geneva International Airport to Stuttgart Airport via Zurich
- Ave. Duration
- 3h 15m
- When
- Every day
- Estimated price
- €120–260
- Phone
- +49 30 2970
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Frankfurt to Mannheim, Hauptbahnhof
- Ave. Duration
- 35 min
- Frequency
- Hourly
- Estimated price
- €12–55
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Basel SBB to Karlsruhe Hauptbahnhof
- Ave. Duration
- 1h 41m
- Frequency
- Hourly
- Estimated price
- €35–140
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Karlsruhe Hauptbahnhof to Heidelberg, Hauptbahnhof
- Ave. Duration
- 37 min
- Frequency
- Every 4 hours
- Estimated price
- €9–40
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Hauptbahnhof to Heidelberg, Hauptbahnhof
- Ave. Duration
- 39 min
- Frequency
- Hourly
- Estimated price
- €16–65
- Website
- Deutsche Bahn Intercity (DB IC)
Rome2Rio's guide to FlixBus
Contact DetailsContact Details
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Geneva to Karlsruhe central train station
- Ave. Duration
- 8h
- Frequency
- Twice daily
- Estimated price
- €30–55
- Website
- Flixbus
Bus from Karlsruhe central train station to Heidelberg Pre Waypoint
- Ave. Duration
- 44 min
- Frequency
- Hourly
- Estimated price
- €4–7
- Website
- Flixbus
Bus from Geneva to Freiburg
- Ave. Duration
- 6h 10m
- Frequency
- Twice daily
- Estimated price
- €24–40
- Website
- Flixbus
Bus from Freiburg to Heidelberg Pre Waypoint
- Ave. Duration
- 4h 19m
- Frequency
- Every 4 hours
- Estimated price
- €16–26
- Website
- Flixbus
Want to know more about travelling around Germany
Rome2Rio's Travel Guide series provide vital information for the global traveller. Filled with useful and timely travel information, the guides answer all the hard questions - such as 'How do I buy a ticket?', 'Should I book online before I travel? ', 'How much should I expect to pay?', 'Do the trains and buses have Wifi?' - to help you get the most out of your next trip.
Related travel guides
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide
Want to know more about Flixbus?
Read the travel guide
More Questions & Answers
Geneva to Heidelberg bus services, operated by FlixBus, arrive at Karlsruhe central train station.
Geneva to Heidelberg train services, operated by Swiss Federal Railways (SBB CFF FFS), arrive at Renens VD station.
Yes, the driving distance between Geneva to Heidelberg is 493 km. It takes approximately 4h 36m to drive from Geneva to Heidelberg.
Book your Geneva to Heidelberg train tickets online with Omio.
Book your Geneva to Heidelberg bus tickets online with Omio and FlixBus.
There are 1256+ hotels available in Heidelberg.









