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 102–272
  2. Fly to Milano Malpensa Airport, train

    cheapest
    1. Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Milano Malpensa Airport (MXP)plane plane MAD - MXP
    2. Take the train from Gallarate to Domodossolatrain train
    3. Take the train from Brig Bahnhofplatz to Zermatttrain train
    9h 26m
    CHF 77–260
  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
    15h 48m
    CHF 188–323
  4. Bus, train

    1. Take the bus from Estación Sur de Autobuses to Geneva - Bus stationbus bus
    2. Take the train from Genève to Visptrain train Ir90 / ...
    25h 46m
    CHF 127–263
  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 137–347
  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 57m
    CHF 119–321
  7. Fly to Il Caravaggio International Airport, train

    1. Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Il Caravaggio International Airport (BGY)plane plane MAD - BGY
    2. Take the train from Milano Centrale to Brigtrain train
    3. Take the train from Brig Bahnhofplatz to Zermatttrain train
    10h 28m
    CHF 111–332
  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 52m
    CHF 129–351
  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
    15h 48m
    CHF 145–349

Madrid to Zermatt by train

Calendar5Weekly Trains
Duration15h 48mAverage Duration
TicketCHF 188Cheapest 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 15h 48m.

Airlines
Train 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