The average train between Oberstaufen and Zermatt takes 9h 15m and the fastest train takes 7h. The train service runs several times per day from Oberstaufen to Zermatt. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Trains run every 4 hours between Oberstaufen and Zermatt. The earliest departure is at 12:17 AM at night, and the last departure from Oberstaufen is at 9:18 PM which arrives into Zermatt at 9:50 AM. All services require a transfer at Lindau-Insel and take an average of 9h 15m. The schedules shown below are for the next available departures.





12h • 5 changes




7h • 5 changes




7h • 5 changes




7h • 5 changes




12h • 5 changes




7h • 5 changes




7h • 5 changes




7h • 5 changes




12h • 5 changes




7h • 5 changes




7h • 5 changes




7h • 5 changes




12h • 5 changes




7h • 5 changes




7h • 5 changes




7h • 5 changes




12h • 5 changes




7h • 5 changes




7h • 5 changes




7h • 5 changes




12h • 5 changes




7h • 5 changes




7h • 5 changes




7h • 5 changesWant to know about travelling from Oberstaufen to Zermatt? 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 train from Oberstaufen to Zermatt. However, there are services departing from Oberstaufen station and arriving at Zermatt station via Lindau-Insel station, Winterthur station, Bern station and Visp station. The journey, including transfers, takes approximately 9h 15m.
Oberstaufen to Zermatt train services, operated by Deutsche Bahn Regio (DB Regional), depart from Oberstaufen station.
Oberstaufen to Zermatt train services, operated by Matterhorn Gotthard Bahn, arrive at Zermatt station.
Book your Oberstaufen to Zermatt train tickets online with Omio.
The distance between Oberstaufen and Zermatt is 242.8 km.
You can take a train from Oberstaufen to Zermatt via Lindau-Insel, Bregenz, Winterthur, Bern, and Visp in around 7h 52m.