The average train between Zermatt and Madrid takes 27h 4m and the fastest train takes 23h 22m. The train service runs several times per day from Zermatt to Madrid. 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 twice daily between Zermatt and Madrid. The earliest departure is at 10:06 AM in the morning, and the last departure from Zermatt is at 11:20 PM which arrives into Madrid at 10:42 PM. All services require a transfer at Visp and take an average of 27h 4m. The schedules shown below are for the next available departures.
Arrives next day





30h 46m • 5 changes
Arrives next day





24h 36m • 5 changes
Arrives next day





30h 46m • 5 changes
Arrives next day





24h 36m • 5 changes
Arrives next day





30h 46m • 5 changes
Arrives next day





24h 36m • 5 changes
Arrives next day





28h 46m • 5 changes
Arrives next day





23h 22m • 5 changes
Want to know about travelling from Zermatt to Madrid? 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 Zermatt to Madrid. However, there are services departing from Zermatt station and arriving at Madrid station via Genève. The journey, including transfers, takes approximately 27h 4m.
Zermatt to Madrid train services, operated by Matterhorn Gotthard Bahn, depart from Visp station.
Zermatt to Madrid train services, operated by Matterhorn Gotthard Bahn, arrive at Madrid-Puerta de Atocha-Almudena Grandes station.
Book your Zermatt to Madrid train tickets online with Matterhorn Gotthard Bahn, Swiss Federal Railways (SBB CFF FFS) and 5 other operators.
The distance between Zermatt and Madrid is 1,116.1 km. The road distance is 1,648 km.
You can take a train from Zermatt to Madrid-Puerta de Atocha-Almudena Grandes via Visp, Genève, Bellegarde, Valence Tgv Rhone-Alpes Sud, and Barcelona-Sants in around 17h 24m.