There are 9 ways to get from Barcelona to Zermatt by train (Renfe, TGV), bus, train, 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 Barcelona-Sants to Lyon Part Dieutrain
- Take the train from Lyon Part Dieu to Genevetrain Ter
- Take the train from Genève to Visptrain
11h 50mCHF 183–294Fly to Turin Caselle Airport, train
cheapest- Fly from Barcelona–El Prat Airport (BCN) to Turin Caselle Airport (TRN)plane BCN - TRN
- Take the train from Torino Porta di Susa to Milano Centraletrain
- Take the train from Milano Centrale to Brigtrain
- Take the train from Brig Bahnhofplatz to Zermatttrain
11h 4mCHF 92–287Bus, train
- Take the bus from Barcelona - North Bus Station to Geneva - Bus Stationbus BlaBlaCar Bus
- Take the train from Genève to Visptrain Ir90 / ...
14h 31mCHF 139–237Fly 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 32mCHF 109–304Fly to Milano Malpensa Airport, bus, train
- Fly from Barcelona–El Prat Airport (BCN) to Milano Malpensa Airport (MXP)plane BCN - MXP
- Take the bus from Gallarate to Domodossolabus
- Take the train from Brig Bahnhofplatz to Zermatttrain
9h 18mFly to Zurich Airport, train
- Fly from Barcelona–El Prat Airport (BCN) to Zurich Airport (ZRH)plane BCN - ZRH
- Take the train from Zürich Flughafen to Berntrain
- Take the train from Bern to Visptrain
8h 44mCHF 126–324Fly to Milan Linate Airport, train
- Fly from Barcelona–El Prat Airport (BCN) to Milan Linate Airport (LIN)plane BCN - LIN
- Take the train from Milano Centrale to Brigtrain
- Take the train from Brig Bahnhofplatz to Zermatttrain
9h 30mCHF 94–323Fly to Il Caravaggio International Airport, bus, train
- Fly from Barcelona–El Prat Airport (BCN) to Il Caravaggio International Airport (BGY)plane BCN - BGY
- Take the bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoiabus
- Take the train from Milano Centrale to Brigtrain
- Take the train from Brig Bahnhofplatz to Zermatttrain
10h 3mCHF 93–330Fly to Lyon–Saint Exupéry Airport, train
- Fly from Barcelona–El Prat Airport (BCN) to Lyon–Saint Exupéry Airport (LYS)plane BCN - LYS
- Take the train from Lyon Part Dieu to Genevetrain
- Take the train from Genève to Visptrain
11h 19mCHF 155–394
Barcelona to Zermatt by train
Comparing Your Travel Options
The cheapest way to get from Barcelona to Zermatt is to fly and train which costs SFr 90 - SFr 290 and takes 11h 4m.
The fastest way to get from Barcelona to Zermatt is to fly and train which takes 8h 32m and costs SFr 100 - SFr 310.
No, there is no direct train from Barcelona to Zermatt. However, there are services departing from Barcelona-Sants and arriving at Zermatt via Lyon Part Dieu, Genève and Visp. The journey, including transfers, takes approximately 11h 50m.
The distance between Barcelona and Zermatt is 1050 km.
The best way to get from Barcelona to Zermatt without a car is to train which takes 11h 50m and costs SFr 180 - SFr 300.
It takes approximately 11h 50m to get from Barcelona to Zermatt, including transfers.
Barcelona to Zermatt train services, operated by Renfe Viajeros, depart from Barcelona-Sants station.
Barcelona to Zermatt train services, operated by Renfe Viajeros, arrive at Lyon Part Dieu station.
Book your Barcelona to Zermatt train tickets online with Omio.
There are 2625+ hotels available in Zermatt.
What companies run services between Barcelona, Spain and Zermatt, Switzerland?
You can take a train from Barcelona-Sants to Zermatt via Lyon Part Dieu, Genève, and Visp in around 11h 50m.
- Website
- easyjet.com
Flights from Barcelona–El Prat Airport to Geneva International Airport
- Ave. Duration
- 1h 42m
- When
- Every day
- Estimated price
- CHF 30–150
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 41m
- When
- Every day
- Estimated price
- CHF 14–85
Flights from Barcelona–El Prat Airport to Milan Linate Airport
- Ave. Duration
- 1h 40m
- When
- Every day
- Estimated price
- CHF 24–120
- Website
- vueling.com
Flights from Barcelona–El Prat Airport to Geneva International Airport
- Ave. Duration
- 1h 40m
- When
- Monday, Wednesday, Friday, Saturday, and Sunday
- Estimated price
- CHF 23–130
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 38m
- When
- Every day
- Estimated price
- CHF 16–95
Flights from Barcelona–El Prat Airport to Zurich Airport
- Ave. Duration
- 1h 50m
- When
- Every day
- Estimated price
- CHF 40–150
Flights from Barcelona–El Prat Airport to Lyon–Saint Exupéry Airport
- Ave. Duration
- 1h 25m
- When
- Monday, Wednesday, Friday, Saturday, and Sunday
- Estimated price
- CHF 28–150
Flights from Barcelona–El Prat Airport to Turin Caselle Airport
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- CHF 15–90
- Website
- ryanair.com
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 45m
- When
- Thursday to Saturday
- Estimated price
- CHF 19–80
Flights from Barcelona–El Prat Airport to Il Caravaggio International Airport
- Ave. Duration
- 1h 45m
- When
- Every day
- Estimated price
- CHF 25–160
Flights from Barcelona–El Prat Airport to Turin Caselle Airport
- Ave. Duration
- 1h 40m
- When
- Wednesday to Tuesday
- Estimated price
- CHF 27–160
Flights from Barcelona–El Prat Airport to Turin Caselle Airport via Ibiza
- Ave. Duration
- 4h
- When
- Saturday
- Estimated price
- CHF 27–160
- Website
- swiss.com
Flights from Barcelona–El Prat Airport to Geneva International Airport via Zurich Airport
- Ave. Duration
- 3h 42m
- When
- Every day
- Estimated price
- CHF 95–180
Flights from Barcelona–El Prat Airport to Zurich Airport
- Ave. Duration
- 1h 46m
- When
- Every day
- Estimated price
- CHF 50–180
- Website
- flyulendo.com
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 45m
- When
- Monday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- CHF 13–110
Flights from Barcelona–El Prat Airport to Turin Caselle Airport
- Ave. Duration
- 1h 30m
- When
- Monday, Tuesday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- CHF 10–75
- Website
- ita-airways.com
Flights from Barcelona–El Prat Airport to Milan Linate Airport via Palma Mallorca
- Ave. Duration
- 4h 15m
- When
- Saturday
- Estimated price
- CHF 85–190
Rome2Rio's guide to Renfe Viajeros
Contact Details
- Phone
- +34 91 232 03 20
- Website
- Renfe Viajeros
Train from Barcelona-Sants to Lyon Part Dieu
- Ave. Duration
- 5h 6m
- Frequency
- Twice daily
- Estimated price
- CHF 75–110
- Website
- Renfe Viajeros
- Phone
- +33 1 84 94 36 35
- Website
- Oui.SNCF
Train from Lyon Part Dieu to Geneve
- Ave. Duration
- 2h 2m
- Frequency
- Hourly
- Estimated price
- CHF 28–45
- Website
- Oui.SNCF
Train from Lyon Part Dieu to Geneve
- Ave. Duration
- 2h 2m
- Frequency
- Hourly
- Estimated price
- CHF 28–45
- Website
- Oui.SNCF
- Phone
- +33 1 84 94 36 35
- Website
- TGV inOui
Train from Lyon Part Dieu to Geneve
- Ave. Duration
- 1h 40m
- Frequency
- Once daily
- Estimated price
- CHF 30–45
- Website
- TGV inOui
Train from Lyon Part Dieu to Geneve
- Ave. Duration
- 1h 40m
- Frequency
- Once daily
- Estimated price
- CHF 30–45
- Website
- TGV inOui
Train from Genève to Visp
- Ave. Duration
- 2h 18m
- Frequency
- Hourly
- Estimated price
- CHF 60–95
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Genève to Visp
- Ave. Duration
- 2h 18m
- Frequency
- Hourly
- Estimated price
- CHF 60–95
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Genève-Aéroport to Visp
- Ave. Duration
- 2h 28m
- Frequency
- Hourly
- Estimated price
- CHF 60–95
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Zürich Flughafen to Bern
- Ave. Duration
- 1h 19m
- Frequency
- Hourly
- Estimated price
- CHF 35–60
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Bern to Visp
- Ave. Duration
- 57 min
- Frequency
- Hourly
- Estimated price
- CHF 29–45
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Genève to Visp
- Ave. Duration
- 2h 18m
- Frequency
- Hourly
- Estimated price
- CHF 60–95
- Website
- Swiss Federal Railways (SBB CFF FFS)
- Phone
- +41 (0)848 642 442
- [email protected]
- Website
- Matterhorn Gotthard Bahn
Train from Brig Bahnhofplatz to Zermatt
- Ave. Duration
- 1h 28m
- Frequency
- Hourly
- Estimated price
- CHF 25–55
- Website
- Matterhorn Gotthard Bahn
- 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
- Matterhorn Gotthard Bahn
- 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
- Matterhorn Gotthard Bahn
- 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
- Matterhorn Gotthard Bahn
- 2nd Class Ticket
- CHF 25–31
- 1st Class Ticket
- CHF 45–55
- Phone
- +39 06 68475475
- [email protected]
- Website
- Trenitalia Eurocity
Train from Milano Centrale to Brig
- Ave. Duration
- 2h 5m
- Frequency
- Hourly
- Estimated price
- CHF 35–80
- Website
- Trenitalia Eurocity
- 1st Class
- CHF 55–80
- 2nd Class
- CHF 35–50
Train from Milano Centrale to Brig
- Ave. Duration
- 2h 5m
- Frequency
- Hourly
- Estimated price
- CHF 35–80
- Website
- Trenitalia Eurocity
- 1st Class
- CHF 55–80
- 2nd Class
- CHF 35–50
Train from Milano Centrale to Brig
- Ave. Duration
- 2h 5m
- Frequency
- Hourly
- Estimated price
- CHF 35–80
- Website
- Trenitalia Eurocity
- 1st Class
- CHF 55–80
- 2nd Class
- CHF 35–50
- Phone
- +39 06 8937 1892
- Website
- Italo Treno
Train from Torino Porta di Susa to Milano Centrale
- Ave. Duration
- 47 min
- Frequency
- Hourly
- Estimated price
- CHF 15–25
- Website
- Italo Treno
- Phone
- +3 318 576 2228
- Website
- BlaBlaCar Bus
Bus from Barcelona - North Bus Station to Geneva - Bus Station
- Ave. Duration
- 10h 15m
- Frequency
- Twice daily
- Estimated price
- CHF 55–100
- Website
- BlaBlaCar Bus
- Phone
- +39 02 7249 4494
- [email protected]
- Website
- Trenord
Bus from Gallarate to Domodossola
- Ave. Duration
- 1h 5m
- Frequency
- Every 2 hours
- Website
- Trenord
- [email protected]
- Website
- TERRAVISION
Bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoia
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 4–21
- Website
- TERRAVISION
- Phone
- 035.319366
- [email protected]
- Website
- orioshuttle.com
Bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoia
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 10–13
- Schedules at
- orioshuttle.com
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






























































