Rome2Rio

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

Find Transport to Zermatt

See all options

There are 9 ways to get from Madrid to Zermatt by plane, train, train (Renfe, TGV), bus, or train (Renfe, Ouigo, TGV)

Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.

  1. Fly to Geneva International Airport, train

    best
    1. Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Geneva International Airport (GVA)plane plane MAD - GVA
    2. Take the train from Genève-Aéroport to Visptrain train
    8h 43m
    CHF 146–457
  2. Fly to Milano Malpensa Airport, bus, train

    cheapest
    1. Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Milano Malpensa Airport (MXP)plane plane MAD - MXP
    2. Take the bus from Aeroporto Malpensa - Terminal 1 to Domodossola - Stazione Ferroviariabus bus
    3. Take the train from Brig Bahnhofplatz to Zermatttrain train
    9h 33m
    CHF 63–205
  3. Train

    1. Take the train from Madrid-Puerta de Atocha-Almudena Grandes to Avignon Tgvtrain train
    2. Take the train from Avignon Tgv to Genevetrain train Tgv
    3. Take the train from Genève to Visptrain train
    16h 13m
    CHF 286–563
  4. Bus, train

    1. Take the bus from Estación Sur de Autobuses to Lyon - Gerland Bus Stationbus bus
    2. Take the bus from Lyon - Gerland Bus Station to Geneva - Bus Stationbus bus
    3. Take the train from Genève to Visptrain train
    23h 59m
    CHF 199–459
  5. Fly to Zurich Airport, train

    1. Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Zurich Airport (ZRH)plane plane MAD - ZRH
    2. Take the train from Zürich Flughafen to Berntrain train
    3. Take the train from Bern to Visptrain train
    9h 5m
    CHF 166–487
  6. Fly to Milan Linate Airport, train

    1. Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Milan Linate Airport (LIN)plane plane MAD - LIN
    2. Take the train from Milano Centrale to Brigtrain train
    3. Take the train from Brig Bahnhofplatz to Zermatttrain train
    9h 49m
    CHF 128–331
  7. Fly to Il Caravaggio International Airport, bus, train

    1. Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Il Caravaggio International Airport (BGY)plane plane MAD - 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 30m
    CHF 105–330
  8. Fly to Lyon–Saint Exupéry Airport, train

    1. Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Lyon–Saint Exupéry Airport (LYS)plane plane MAD - LYS
    2. Take the train from Lyon Part Dieu to Genevetrain train
    3. Take the train from Genève to Visptrain train
    11h 35m
    CHF 182–502
  9. Train via Barcelona

    1. Take the train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Santstrain train Ave
    2. Take the train from Barcelona-Sants to Lyon Part Dieutrain train
    3. Take the train from Lyon Part Dieu to Genevetrain train Ter
    4. Take the train from Genève to Visptrain train
    16h 16m
    CHF 240–578

Madrid to Zermatt by train

Calendar10Weekly Trains
Duration16h 13mAverage Duration
TicketCHF 286Cheapest Price
See schedules

Questions & Answers

What companies run services between Madrid, Spain and Zermatt, Switzerland?

You can take a train from Madrid-Puerta de Atocha-Almudena Grandes to Zermatt via Avignon Tgv, Genève, and Visp in around 16h 13m.

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