There are 8 ways to get from Spain to Zermatt by train (Renfe, TGV), bus, train, plane, or train (TGV, Renfe)
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 Barcelona-Sants to Lyon Part Dieutrain
- Take the train from Lyon Part Dieu to Genevetrain Ter
- Take the train from Genève to Visptrain
12h 55mCHF 185–421Fly Barcelona–El Prat Airport to Milano Malpensa Airport, train
cheapest- Fly from Barcelona–El Prat Airport (BCN) to Milano Malpensa Airport (MXP)plane BCN - MXP
- Take the train from Gallarate to Domodossolatrain
- Take the train from Brig Bahnhofplatz to Zermatttrain
8h 58mCHF 59–172Bus, train
- Take the bus from Barcelona to Milanbus
- Take the train from Milano Centrale to Brigtrain Ec
- Take the train from Brig Bahnhofplatz to Zermatttrain R42 / ...
20h 58mCHF 137–261Fly Barcelona–El Prat Airport to Geneva International Airport, train
- Fly from Barcelona–El Prat Airport (BCN) to Geneva International Airport (GVA)plane BCN - GVA
- Take the train from Genève-Aéroport to Visptrain
8h 27mCHF 122–410Train via Saint-Marcel-lès-Valence
- Take the train from Barcelona-Sants to Valence Tgv Rhone-Alpes Sudtrain Tgv
- Take the train from Valence Tgv Rhone-Alpes Sud to Genevetrain Ter
- Take the train from Genève to Visptrain
13h 54mCHF 185–506Fly Son Sant Joan Airport to Milano Malpensa Airport, train
- Fly from Son Sant Joan Airport (PMI) to Milano Malpensa Airport (MXP)plane PMI - MXP
- Take the train from Gallarate to Domodossolatrain
- Take the train from Brig Bahnhofplatz to Zermatttrain
8h 50mCHF 60–182Fly Valencia Airport to Milano Malpensa Airport, train
- Fly from Valencia Airport (VLC) to Milano Malpensa Airport (MXP)plane VLC - MXP
- Take the train from Gallarate to Domodossolatrain
- Take the train from Brig Bahnhofplatz to Zermatttrain
9h 14mCHF 70–247Fly Adolfo Suárez Madrid–Barajas Airport to Milano Malpensa Airport, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Milano Malpensa Airport (MXP)plane MAD - MXP
- Take the train from Gallarate to Domodossolatrain
- Take the train from Brig Bahnhofplatz to Zermatttrain
9h 29mCHF 62–235
Spain to Zermatt by train
Questions & Answers
The cheapest way to get from Spain to Zermatt is to fly and train which costs SFr 55 - SFr 190 and takes 8h 50m.
The fastest way to get from Spain to Zermatt is to fly and train which takes 8h 27m and costs SFr 120 - SFr 410.
No, there is no direct train from Spain to Zermatt. However, there are services departing from Barcelona Plaça de Catalunya and arriving at Zermatt via Barcelona-Sants, Lyon Part Dieu, Genève and Visp. The journey, including transfers, takes approximately 12h 55m.
The distance between Spain and Zermatt is 1053 km.
The best way to get from Spain to Zermatt without a car is to train which takes 12h 55m and costs SFr 180 - SFr 430.
It takes approximately 12h 55m to get from Spain to Zermatt, including transfers.
Spain to Zermatt train services, operated by Renfe Viajeros, depart from Barcelona-Sants station.
Spain to Zermatt train services, operated by Renfe Viajeros, arrive at Lyon Part Dieu station.
Book your Spain to Zermatt train tickets online with Omio.
There are 2244+ hotels available in Zermatt.
What companies run services between Spain and Zermatt, Switzerland?
You can take a train from Barcelona Plaça de Catalunya to Zermatt via Barcelona-Sants, Lyon Part Dieu, Genève, and Visp in around 12h 55m.
- Website
- easyjet.com
Flights from Barcelona–El Prat Airport to Geneva International Airport
- Ave. Duration
- 1h 41m
- When
- Every day
- Estimated price
- CHF 40–160
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 42m
- When
- Friday, Wednesday, Saturday, Monday, Sunday, and Tuesday
- Estimated price
- CHF 35–75
Flights from Son Sant Joan Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 45m
- When
- Every day
- Estimated price
- CHF 26–95
- Website
- ryanair.com
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 45m
- When
- Every day
- Estimated price
- CHF 23–90
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport via Son Sant Joan Airport
- Ave. Duration
- 4h 10m
- When
- Sunday and Friday
- Estimated price
- CHF 23–90
Flights from Son Sant Joan Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 45m
- When
- Every day
- Estimated price
- CHF 22–110
Flights from Son Sant Joan Airport to Milano Malpensa Airport via Barcelona–El Prat Airport
- Ave. Duration
- 3h 37m
- When
- Tuesday and Saturday
- Estimated price
- CHF 22–110
Flights from Valencia Airport to Milano Malpensa Airport
- Ave. Duration
- 2h
- When
- Monday to Saturday
- Estimated price
- CHF 29–150
Flights from Valencia Airport to Milano Malpensa Airport via Son Sant Joan Airport
- Ave. Duration
- 4h 17m
- When
- Sunday and Friday
- Estimated price
- CHF 29–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 9m
- When
- Every day
- Estimated price
- CHF 25–140
- Website
- vueling.com
Flights from Barcelona–El Prat Airport to Geneva International Airport
- Ave. Duration
- 1h 40m
- When
- Every day
- Estimated price
- CHF 29–120
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 41m
- When
- Every day
- Estimated price
- CHF 18–75
Flights from Son Sant Joan Airport to Milano Malpensa Airport via Barcelona–El Prat Airport
- Ave. Duration
- 3h 38m
- When
- Monday, Friday, Wednesday, Thursday, Saturday, and Sunday
- Estimated price
- CHF 25–120
Flights from Valencia Airport to Milano Malpensa Airport via Ibiza
- Ave. Duration
- 4h 35m
- When
- Monday, Friday, and Saturday
- Estimated price
- CHF 45–380
Flights from Adolfo Suárez Madrid–Barajas Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 11m
- When
- Every day
- Estimated price
- CHF 55–120
- Website
- iberia.com
Flights from Barcelona–El Prat Airport to Geneva International Airport
- Ave. Duration
- 1h 40m
- When
- Every day
- Estimated price
- CHF 29–120
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 41m
- When
- Every day
- Estimated price
- CHF 18–75
Flights from Son Sant Joan Airport to Milano Malpensa Airport via Barcelona–El Prat Airport
- Ave. Duration
- 3h 38m
- When
- Monday, Friday, Wednesday, Thursday, Saturday, and Sunday
- Estimated price
- CHF 25–120
Flights from Adolfo Suárez Madrid–Barajas Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 11m
- When
- Every day
- Estimated price
- CHF 55–120
- Website
- flyulendo.com
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 50m
- When
- Every day
- Estimated price
- CHF 16–65
Flights from Son Sant Joan Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 45m
- When
- Every day
- Estimated price
- CHF 14–65
Flights from Valencia Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 10m
- When
- Every day
- Estimated price
- CHF 22–95
Flights from Adolfo Suárez Madrid–Barajas Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 15m
- When
- Every day
- Estimated price
- CHF 21–100
- Website
- neosair.it
Flights from Son Sant Joan Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 50m
- When
- Thursday, Sunday, and Saturday
- Estimated price
- CHF 95–270
- Website
- aireuropa.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 5m
- When
- Every day
- Estimated price
- CHF 65–160
- Website
- swiss.com
Flights from Barcelona–El Prat Airport to Geneva International Airport via Zurich
- Ave. Duration
- 3h 42m
- When
- Every day
- Estimated price
- CHF 100–230
- Website
- singaporeair.com
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 40m
- When
- Wednesday, Thursday, and Sunday
- Estimated price
- CHF 55–120
Rome2Rio's guide to Renfe Viajeros
Contact DetailsContact Details
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Barcelona-Sants to Lyon Part Dieu
- Ave. Duration
- 5h 6m
- Frequency
- Twice daily
- Estimated price
- CHF 75–120
- Website
- https://www.renfe.com/es/en
Train from Barcelona-Sants to Valence Tgv Rhone-Alpes Sud
- Ave. Duration
- 4h 29m
- Frequency
- Twice daily
- Estimated price
- CHF 60–100
- Website
- https://www.renfe.com/es/en
- Phone
- +33 1 84 94 36 35
- Website
- track.effiliation.com
Train from Lyon Part Dieu to Geneve
- Ave. Duration
- 2h 2m
- Frequency
- Hourly
- Estimated price
- CHF 25–50
- Website
- https://track.effiliation.com/servlet/effi.redir?id_compteur=23007591&url=https%3A%2F%2Fwww.sncf-connect.com%2Fen-en%2F
Train from Valence Tgv Rhone-Alpes Sud to Geneve
- Ave. Duration
- 3h 16m
- Frequency
- Every 4 hours
- Estimated price
- CHF 40–80
- Website
- https://track.effiliation.com/servlet/effi.redir?id_compteur=23007591&url=https%3A%2F%2Fwww.sncf-connect.com%2Fen-en%2F
- Phone
- +33 1 84 94 36 35
- Website
- sncf-connect.com
Train from Lyon Part Dieu to Geneve
- Ave. Duration
- 1h 50m
- Frequency
- Once daily
- Estimated price
- CHF 30–55
- Website
- https://www.sncf-connect.com/en-en
Train from Barcelona-Sants to Valence Tgv Rhone-Alpes Sud
- Ave. Duration
- 4h 26m
- Frequency
- 5 times a day
- Estimated price
- CHF 110–180
- Website
- https://www.sncf-connect.com/en-en
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Genève to Visp
- Ave. Duration
- 2h 18m
- Frequency
- Hourly
- Estimated price
- CHF 65–200
- Website
- https://www.sbb.ch/en
Train from Genève-Aéroport to Visp
- Ave. Duration
- 2h 28m
- Frequency
- Hourly
- Estimated price
- CHF 70–210
- Website
- https://www.sbb.ch/en
Train from Genève to Visp
- Ave. Duration
- 2h 18m
- Frequency
- Hourly
- Estimated price
- CHF 65–200
- Website
- https://www.sbb.ch/en
- Phone
- +39 06 68475475
- ufficiogruppi@trenitalia.it
- Website
- trenitalia.com
Train from Milano Centrale to Brig
- Ave. Duration
- 2h 4m
- Frequency
- Hourly
- Estimated price
- CHF 35–80
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- CHF 55–80
- 2nd Class
- CHF 35–50
- Phone
- +41 (0)848 642 442
- railcenter@mgbahn.ch
- Website
- matterhorngotthardbahn.ch
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
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
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
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
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
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Gallarate to Domodossola
- Ave. Duration
- 1h 5m
- Frequency
- Every 2 hours
- Estimated price
- CHF 5–8
- Website
- https://www.trenord.it/en/
Train from Gallarate to Domodossola
- Ave. Duration
- 1h 5m
- Frequency
- Every 2 hours
- Estimated price
- CHF 5–8
- Website
- https://www.trenord.it/en/
Train from Gallarate to Domodossola
- Ave. Duration
- 1h 5m
- Frequency
- Every 2 hours
- Estimated price
- CHF 5–8
- Website
- https://www.trenord.it/en/
Train from Gallarate to Domodossola
- Ave. Duration
- 1h 5m
- 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 41m
- Frequency
- Hourly
- Estimated price
- CHF 9–16
- Website
- https://www.trenitalia.com/en.html
Train from Gallarate to Domodossola
- Ave. Duration
- 1h 41m
- Frequency
- Hourly
- Estimated price
- CHF 9–16
- Website
- https://www.trenitalia.com/en.html
Train from Gallarate to Domodossola
- Ave. Duration
- 1h 41m
- Frequency
- Hourly
- Estimated price
- CHF 9–16
- Website
- https://www.trenitalia.com/en.html
Train from Gallarate to Domodossola
- Ave. Duration
- 1h 41m
- Frequency
- Hourly
- Estimated price
- CHF 9–16
- Website
- https://www.trenitalia.com/en.html
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- https://www.flixbus.fr
Bus from Barcelona to Milan
- Ave. Duration
- 15h 20m
- Frequency
- Twice daily
- Estimated price
- CHF 75–130
- 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
5 delightfully under-the-radar French towns you need to visit
Read the travel guide
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide
Train travel in Spain: A guide to Renfe
Read the travel guide








































