There are 8 ways to get from Heidelberg to Zermatt by night train, train, bus, 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.
Night train, train
best- Take the night train from Heidelberg Hbf to Basel Sbbnighttrain Nj
- Take the train from Basel SBB to Visptrain Ic6 / ...
7h 8mCHF 65–378Train
cheapest- Take the train from Heidelberg, Hauptbahnhof to Karlsruhe Hauptbahnhoftrain S3 / ...
- Take the train from Karlsruhe Hauptbahnhof to Basel SBBtrain 20 / ...
- Take the train from Basel SBB to Visptrain Ic6 / ...
7h 31mCHF 62–261Bus, train
- Take the bus from Heidelberg central train station to Bernbus 122
- Take the train from Bern to Visptrain Ic8 / ...
8h 53mCHF 76–140Train 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 Berntrain
- Take the train from Bern to Visptrain
- Take the train from Visp to Zermatttrain
7h 35mCHF 203–401Train 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 Visptrain
- Take the train from Visp to Zermatttrain
8h 4mCHF 154–417Train to Frankfurt, fly to Zurich Airport, train
- Take the train from Mannheim, Hauptbahnhof to Frankfurttrain
- Fly from Frankfurt (FRA) to Zurich Airport (ZRH)plane FRA - ZRH
- Take the train from Zürich Flughafen to Berntrain
- Take the train from Bern to Visptrain
- Take the train from Visp to Zermatttrain
7h 50mCHF 167–377Train to Frankfurt, fly to Geneva International Airport, train
- Take the train from Mannheim, Hauptbahnhof to Frankfurttrain
- Fly from Frankfurt (FRA) to Geneva International Airport (GVA)plane FRA - GVA
- Take the train from Genève-Aéroport to Visptrain
9h 9mCHF 172–382Train to Frankfurt, fly to Milano Malpensa Airport, train
- Take the train from Mannheim, Hauptbahnhof to Frankfurttrain
- Fly from Frankfurt (FRA) to Milano Malpensa Airport (MXP)plane FRA - MXP
- Take the train from Gallarate to Domodossolatrain
- Take the train from Brig Bahnhofplatz to Zermatttrain
9h 36mCHF 122–330
Heidelberg to Zermatt by night train and train
Questions & Answers
The cheapest way to get from Heidelberg to Zermatt is to bus and train which costs SFr 75 - SFr 140 and takes 8h 53m.
The fastest way to get from Heidelberg to Zermatt is to night train and train which takes 7h 8m and costs SFr 65 - SFr 380.
No, there is no direct train from Heidelberg to Zermatt. However, there are services departing from Heidelberg Hbf and arriving at Zermatt via Basel SBB and Visp. The journey, including transfers, takes approximately 7h 8m.
The distance between Heidelberg and Zermatt is 476 km.
The best way to get from Heidelberg to Zermatt without a car is to night train and train which takes 7h 8m and costs SFr 65 - SFr 380.
It takes approximately 7h 8m to get from Heidelberg to Zermatt, including transfers.
Heidelberg to Zermatt train services, operated by Deutsche Bahn Regio (DB Regional), depart from Heidelberg, Hauptbahnhof station.
Heidelberg to Zermatt train services, operated by Deutsche Bahn Regio (DB Regional), arrive at Karlsruhe Hauptbahnhof station.
Book your Heidelberg to Zermatt train tickets online with Omio.
There are 2347+ hotels available in Zermatt.
What companies run services between Heidelberg, Germany and Zermatt, Switzerland?
You can take a train from Heidelberg, Hauptbahnhof to Zermatt via Karlsruhe Hauptbahnhof, Basel SBB, and Visp in around 7h 31m.
- Website
- lufthansa.com
Flights from Frankfurt to Basel
- Ave. Duration
- 55 min
- When
- Every day
- Estimated price
- CHF 70–280
Flights from Frankfurt to Basel via Munich
- Ave. Duration
- 2h 50m
- When
- Tuesday, Thursday, and Saturday
- Estimated price
- CHF 75–300
Flights from Frankfurt to Zurich Airport
- Ave. Duration
- 56 min
- When
- Every day
- Estimated price
- CHF 60–240
Flights from Frankfurt to Zurich Airport via Munich
- Ave. Duration
- 2h 40m
- When
- Every day
- Estimated price
- CHF 65–250
Flights from Frankfurt to Geneva International Airport
- Ave. Duration
- 1h 12m
- When
- Every day
- Estimated price
- CHF 60–280
Flights from Frankfurt to Geneva International Airport via Munich
- Ave. Duration
- 3h 3m
- When
- Every day
- Estimated price
- CHF 65–290
Flights from Frankfurt to Milano Malpensa Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- CHF 65–230
Flights from Frankfurt to Milano Malpensa Airport via Munich
- Ave. Duration
- 3h 20m
- When
- Monday to Friday
- Estimated price
- CHF 75–240
- Website
- swiss.com
Flights from Stuttgart Airport to Zurich Airport
- Ave. Duration
- 45 min
- When
- Every day
- Estimated price
- CHF 70–320
Flights from Frankfurt to Basel
- Ave. Duration
- 55 min
- When
- Sunday
- Estimated price
- CHF 70–280
Flights from Frankfurt to Zurich Airport
- Ave. Duration
- 56 min
- When
- Every day
- Estimated price
- CHF 60–240
Flights from Frankfurt to Geneva International Airport
- Ave. Duration
- 1h 12m
- When
- Every day
- Estimated price
- CHF 60–280
Flights from Frankfurt to Geneva International Airport via Zurich Airport
- Ave. Duration
- 2h 52m
- When
- Every day
- Estimated price
- CHF 60–280
- Website
- airdolomiti.it
Flights from Frankfurt to Basel
- Ave. Duration
- 55 min
- When
- Every day
- Estimated price
- CHF 80–280
Flights from Frankfurt to Zurich Airport
- Ave. Duration
- 55 min
- When
- Every day
- Estimated price
- CHF 70–240
Flights from Frankfurt to Geneva International Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- CHF 80–270
Flights from Frankfurt to Milano Malpensa Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- CHF 70–230
- Website
- condor.com
Flights from Frankfurt to Zurich Airport
- Ave. Duration
- 50 min
- When
- Every day
- Estimated price
- CHF 65–160
Flights from Frankfurt to Milano Malpensa Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- CHF 40–120
- 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–239
- Website
- https://www.nightjet.com/en/#/home
- Sleeper Carriage
- CHF 235–239
- Couchette Carriage
- CHF 110–140
- Seating Carriage
- CHF 30–40
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Basel SBB to Visp
- Ave. Duration
- 2h 6m
- Frequency
- Hourly
- Estimated price
- CHF 50–95
- Website
- https://www.sbb.ch/en
Train from Bern to Visp
- Ave. Duration
- 57 min
- Frequency
- Hourly
- Estimated price
- CHF 30–60
- Website
- https://www.sbb.ch/en
Train from Zürich Flughafen to Bern
- Ave. Duration
- 1h 19m
- Frequency
- Hourly
- Estimated price
- CHF 35–60
- Website
- https://www.sbb.ch/en
Train from Genève-Aéroport to Visp
- Ave. Duration
- 2h 28m
- Frequency
- Hourly
- Estimated price
- CHF 35–55
- Website
- https://www.sbb.ch/en
- Phone
- +49 (0) 7531 915109
- info@sbb-deutschland.de
- Website
- sbb-deutschland.de
Train from Basel SBB to Visp
- Ave. Duration
- 2h 5m
- Frequency
- 3 times a day
- Estimated price
- CHF 14–19
- Schedules at
- sbb-deutschland.de
- Phone
- +49 30 311 682904
- Website
- bahn.de
Train from Heidelberg, Hauptbahnhof to Hauptbahnhof
- Ave. Duration
- 39 min
- Frequency
- Hourly
- Estimated price
- CHF 16–40
- Website
- https://int.bahn.de/en
Train from Heidelberg, Hauptbahnhof to Karlsruhe Hauptbahnhof
- Ave. Duration
- 36 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–50
- Website
- https://int.bahn.de/en
Train from Mannheim, Hauptbahnhof to Frankfurt
- Ave. Duration
- 35 min
- Frequency
- Hourly
- Estimated price
- CHF 11–26
- Website
- https://int.bahn.de/en
- Phone
- +41 (0)848 642 442
- railcenter@mgbahn.ch
- Website
- matterhorngotthardbahn.ch
Train from Visp to Zermatt
- Ave. Duration
- 1h 6m
- Frequency
- Hourly
- Estimated price
- CHF 20–45
- Website
- https://www.matterhorngotthardbahn.ch/en/
- 2nd Class Ticket
- CHF 20–25
- 1st Class Ticket
- CHF 35–45
Train from Brig Bahnhofplatz to Zermatt
- Ave. Duration
- 1h 28m
- Frequency
- Hourly
- Estimated price
- CHF 25–55
- Website
- https://www.matterhorngotthardbahn.ch/en/
- 2nd Class Ticket
- CHF 25–31
- 1st Class Ticket
- CHF 45–55
- 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 300 137 300
- info@flixbus.de
- Website
- flixtrain.de
Train from Heidelberg, Hauptbahnhof to Karlsruhe Hauptbahnhof
- Ave. Duration
- 27 min
- Frequency
- Once daily
- Estimated price
- CHF 3–7
- Website
- https://www.flixtrain.com/
- 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
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Gallarate to Domodossola
- Ave. Duration
- 1h 1m
- Frequency
- Every 2 hours
- Estimated price
- CHF 5–8
- Website
- https://www.trenord.it/en/
- Phone
- +39.06.5210550
- Website
- trenitalia.com
Train from Gallarate to Domodossola
- Ave. Duration
- 1h 40m
- Frequency
- Every 4 hours
- Estimated price
- CHF 7–8
- Website
- https://www.trenitalia.com/en.html
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 Bern
- Ave. Duration
- 5h 30m
- Frequency
- 5 times a week
- Estimated price
- CHF 25–40
- 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
















































