Rome2Rio

How to get fromBarcelona to Zermattby train (Renfe, TGV), bus, train, or plane

Find Transport to Zermatt

See all options
QR code to download the Rome2Rio app

Download the Rome2Rio travel app

Scan QR code with your phone to download the app

Download on the App StoreGet it on Google Play

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.

  1. Train

    best
    1. Take the train from Barcelona-Sants to Lyon Part Dieutrain train
    2. Take the train from Lyon Part Dieu to Genevetrain train Ter
    3. Take the train from Genève to Visptrain train
    11h 50m
    CHF 183–294
  2. Fly to Turin Caselle Airport, train

    cheapest
    1. Fly from Barcelona–El Prat Airport (BCN) to Turin Caselle Airport (TRN)plane plane BCN - TRN
    2. Take the train from Torino Porta di Susa to Milano Centraletrain train
    3. Take the train from Milano Centrale to Brigtrain train
    4. Take the train from Brig Bahnhofplatz to Zermatttrain train
    11h 4m
    CHF 92–287
  3. Bus, train

    1. Take the bus from Barcelona - North Bus Station to Geneva - Bus Stationbus bus BlaBlaCar Bus
    2. Take the train from Genève to Visptrain train Ir90 / ...
    14h 31m
    CHF 139–237
  4. Fly to Geneva International Airport, train

    1. Fly from Barcelona–El Prat Airport (BCN) to Geneva International Airport (GVA)plane plane BCN - GVA
    2. Take the train from Genève-Aéroport to Visptrain train
    8h 32m
    CHF 109–304
  5. Fly to Milano Malpensa Airport, bus, train

    1. Fly from Barcelona–El Prat Airport (BCN) to Milano Malpensa Airport (MXP)plane plane BCN - MXP
    2. Take the bus from Gallarate to Domodossolabus bus
    3. Take the train from Brig Bahnhofplatz to Zermatttrain train
    9h 18m
  6. Fly to Zurich Airport, train

    1. Fly from Barcelona–El Prat Airport (BCN) to Zurich Airport (ZRH)plane plane BCN - ZRH
    2. Take the train from Zürich Flughafen to Berntrain train
    3. Take the train from Bern to Visptrain train
    8h 44m
    CHF 126–324
  7. Fly to Milan Linate Airport, train

    1. Fly from Barcelona–El Prat Airport (BCN) to Milan Linate Airport (LIN)plane plane BCN - LIN
    2. Take the train from Milano Centrale to Brigtrain train
    3. Take the train from Brig Bahnhofplatz to Zermatttrain train
    9h 30m
    CHF 94–323
  8. Fly to Il Caravaggio International Airport, bus, train

    1. Fly from Barcelona–El Prat Airport (BCN) to Il Caravaggio International Airport (BGY)plane plane BCN - BGY
    2. Take the bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoiabus bus
    3. Take the train from Milano Centrale to Brigtrain train
    4. Take the train from Brig Bahnhofplatz to Zermatttrain train
    10h 3m
    CHF 93–330
  9. Fly to Lyon–Saint Exupéry Airport, train

    1. Fly from Barcelona–El Prat Airport (BCN) to Lyon–Saint Exupéry Airport (LYS)plane plane BCN - LYS
    2. Take the train from Lyon Part Dieu to Genevetrain train
    3. Take the train from Genève to Visptrain train
    11h 19m
    CHF 155–394

Barcelona to Zermatt by train

Calendar14Weekly Trains
Duration11h 50mAverage Duration
TicketCHF 183Cheapest Price
See schedules

Comparing Your Travel Options

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.

Airlines
Train operators
Bus operators

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