There are 6 ways to get from Heidelberg to Olten by train, bus, night train, car, or plane
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train
best- Take the train from Heidelberg, Hauptbahnhof to Karlsruhe Hauptbahnhoftrain S3 / ...
- Take the train from Karlsruhe Hauptbahnhof to Basel SBBtrain 20 / ...
3h 57mCHF 39–140Bus
cheapest- Take the bus from Heidelberg central train station to Basel SBBbus FlixBus N33 / ...
5h 8mCHF 23–39Night train
- Take the night train from Heidelberg Hbf to Basel Sbbnighttrain Nj
3h 34mCHF 35–256Drive 284.3 km
- Drive from Heidelberg to Oltencar 284.3 km
2h 41mCHF 45–65Train to Frankfurt, fly to Basel, train
- Take the train from Mannheim, Hauptbahnhof to Frankfurttrain
- Fly from Frankfurt (FRA) to Basel (BSL)plane FRA - BSL
- Take the train from Basel SBB to Oltentrain
4h 30mCHF 134–326Train to Stuttgart Airport, fly to Zurich Airport, train
- Take the train from Heidelberg, Hauptbahnhof to Hauptbahnhoftrain
- Fly from Stuttgart Airport (STR) to Zurich Airport (ZRH)plane STR - ZRH
- Take the train from Zürich Flughafen to Oltentrain
4h 31mCHF 132–275
Heidelberg to Olten by train
Questions & Answers
The cheapest way to get from Heidelberg to Olten is to bus which costs SFr 22 - SFr 40 and takes 5h 8m.
The fastest way to get from Heidelberg to Olten is to drive which takes 2h 41m and costs SFr 40 - SFr 65.
No, there is no direct train from Heidelberg to Olten. However, there are services departing from Heidelberg, Hauptbahnhof and arriving at Olten via Karlsruhe Hauptbahnhof and Basel SBB. The journey, including transfers, takes approximately 3h 57m.
The distance between Heidelberg and Olten is 286 km. The road distance is 284.3 km.
The best way to get from Heidelberg to Olten without a car is to train which takes 3h 57m and costs SFr 35 - SFr 140.
It takes approximately 3h 57m to get from Heidelberg to Olten, including transfers.
Heidelberg to Olten train services, operated by Deutsche Bahn Regio (DB Regional), depart from Heidelberg, Hauptbahnhof station.
The best way to get from Heidelberg to Olten is to train which takes 3h 57m and costs SFr 35 - SFr 140. Alternatively, you can bus, which costs SFr 22 - SFr 40 and takes 5h 8m.
Heidelberg to Olten train services, operated by Deutsche Bahn Regio (DB Regional), arrive at Karlsruhe Hauptbahnhof station.
Yes, the driving distance between Heidelberg to Olten is 284 km. It takes approximately 2h 41m to drive from Heidelberg to Olten.
What companies run services between Heidelberg, Germany and Olten, Switzerland?
You can take a train from Heidelberg, Hauptbahnhof to Olten via Karlsruhe Hauptbahnhof and Basel SBB in around 3h 57m. Alternatively, FlixBus operates a bus from Heidelberg central train station to Basel SBB 3 times a day. Tickets cost CHF 12–21 and the journey takes 4h 5m.
- Website
- lufthansa.com
Flights from Frankfurt to Basel
- Ave. Duration
- 55 min
- When
- Every day
- Estimated price
- CHF 70–320
Flights from Frankfurt to Basel via Munich
- Ave. Duration
- 2h 50m
- When
- Tuesday, Thursday, and Saturday
- Estimated price
- CHF 75–310
- Website
- swiss.com
Flights from Frankfurt to Basel
- Ave. Duration
- 55 min
- When
- Sunday
- Estimated price
- CHF 70–290
Flights from Stuttgart Airport to Zurich Airport
- Ave. Duration
- 45 min
- When
- Every day
- Estimated price
- CHF 65–320
- Website
- airdolomiti.it
Flights from Frankfurt to Basel
- Ave. Duration
- 55 min
- When
- Every day
- Estimated price
- CHF 85–320
- Phone
- +49 30 2970
- Website
- bahn.de
Train from Heidelberg, Hauptbahnhof to Karlsruhe Hauptbahnhof
- Ave. Duration
- 48 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 10–15
- Website
- https://int.bahn.de/en
- Phone
- +43 5 1717
- Website
- konzern.oebb.at
Train from Heidelberg, Hauptbahnhof to Karlsruhe Hauptbahnhof
- Ave. Duration
- 28 min
- Frequency
- 3 times a day
- Estimated price
- CHF 16–24
- Website
- https://konzern.oebb.at/en/
- Phone
- +49 30 311 682904
- Website
- bahn.de
Train from Heidelberg, Hauptbahnhof to Karlsruhe Hauptbahnhof
- Ave. Duration
- 37 min
- Frequency
- 5 times a day
- Estimated price
- CHF 16–26
- Website
- https://int.bahn.de/en
Train from Karlsruhe Hauptbahnhof to Basel SBB
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- CHF 24–55
- Website
- https://int.bahn.de/en
Train from Mannheim, Hauptbahnhof to Frankfurt
- Ave. Duration
- 35 min
- Frequency
- Hourly
- Estimated price
- CHF 16–26
- Website
- https://int.bahn.de/en
Train from Heidelberg, Hauptbahnhof to Hauptbahnhof
- Ave. Duration
- 39 min
- Frequency
- Hourly
- Estimated price
- CHF 16–40
- Website
- https://int.bahn.de/en
- Phone
- +31 30 751 5155
- Website
- ns.nl
Train from Karlsruhe Hauptbahnhof to Basel SBB
- Ave. Duration
- 2h 18m
- Frequency
- Once daily
- Estimated price
- CHF 28–95
- Website
- https://www.ns.nl/en
- 2nd Class
- CHF 28–45
- 1st Class
- CHF 55–95
Train from Mannheim, Hauptbahnhof to Frankfurt
- Ave. Duration
- 31 min
- Frequency
- Once daily
- Estimated price
- CHF 11–35
- Website
- https://www.ns.nl/en
- 2nd Class
- CHF 11–18
- 1st Class
- CHF 21–35
- Phone
- +43 51717
- Website
- nightjet.com
Night train from Heidelberg Hbf to Basel Sbb
- Ave. Duration
- 2h 47m
- Frequency
- Once daily
- Estimated price
- CHF 30–238
- Website
- https://www.nightjet.com/en/#/home
- Sleeper Carriage
- CHF 234–238
- Couchette Carriage
- CHF 110–140
- Seating Carriage
- CHF 30–40
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Basel SBB to Olten
- Ave. Duration
- 40 min
- Frequency
- Every 20 minutes
- Estimated price
- CHF 10–19
- Website
- https://www.sbb.ch/en
Train from Zürich Flughafen to Olten
- Ave. Duration
- 50 min
- Frequency
- Hourly
- Estimated price
- CHF 20–26
- Website
- https://www.sbb.ch/en
- Phone
- +41 58 580 70 70
- info@sob.ch
- Website
- sob.ch
Train from Basel SBB to Olten
- Ave. Duration
- 24 min
- Frequency
- Every 4 hours
- Schedules at
- sob.ch
- Phone
- +49 (0) 7531 915109
- info@sbb-deutschland.de
- Website
- sbb-deutschland.de
Train from Basel SBB to Olten
- Ave. Duration
- 27 min
- Frequency
- Every 4 hours
- Estimated price
- CHF 4–7
- Schedules at
- sbb-deutschland.de
Rome2Rio's guide to FlixBus
Contact Details
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Heidelberg central train station to Basel SBB
- Ave. Duration
- 4h 5m
- Frequency
- 3 times a day
- Estimated price
- CHF 12–21
- Website
- https://www.flixbus.co.uk
Want to know more about travelling around Switzerland
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
5 delightfully under-the-radar French towns you need to visit
Read the travel guide
More Questions & Answers
Book your Heidelberg to Olten train tickets online with Omio.
There are 391+ hotels available in Olten.








































