Rome2Rio

How to get fromPorto to Zermattby plane, train or bus

Find Transport to Zermatt

See all options

There are 9 ways to get from Porto to Zermatt by plane, train, or bus

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 Francisco De Sá Carneiro Airport (OPO) to Geneva International Airport (GVA)planeOPO - GVA
    2. Take the train from Genève-Aéroport to Visptrain
    9h 14m
    CHF 92–277
  2. Fly to Milano Malpensa Airport, train

    cheapest
    1. Fly from Francisco De Sá Carneiro Airport (OPO) to Milano Malpensa Airport (MXP)planeOPO - MXP
    2. Take the train from Gallarate to Domodossolatrain
    3. Take the train from Brig Bahnhofplatz to Zermatt, Bahnhoftrain
    9h 59m
    CHF 88–250
  3. Bus, train

    1. Take the bus from Porto to MartignybusFlixBus N1157
    2. Take the train from Martigny to VisptrainIr90 / ...
    32h 53m
    CHF 163–274
  4. Train, bus

    1. Take the train from Porto Campanha to Redondela De GaliciatrainIc
    2. Take the train from Redondela De Galicia to Barcelona-SantstrainAlv
    3. Take the bus from Barcelona to Genevabus
    4. Take the train from Genève to VisptrainIr
    33h 38m
    CHF 193–373
  5. Fly to Zurich Airport, train

    1. Fly from Francisco De Sá Carneiro Airport (OPO) to Zurich Airport (ZRH)planeOPO - ZRH
    2. Take the train from Zürich Flughafen to Visptrain
    9h 29m
    CHF 117–317
  6. Fly to Basel, train

    1. Fly from Francisco De Sá Carneiro Airport (OPO) to Basel (BSL)planeOPO - BSL
    2. Take the train from Basel SBB to Visptrain
    9h 52m
    CHF 130–357
  7. Fly to Il Caravaggio International Airport, train

    1. Fly from Francisco De Sá Carneiro Airport (OPO) to Il Caravaggio International Airport (BGY)planeOPO - BGY
    2. Take the train from Milano Centrale to Brigtrain
    3. Take the train from Brig Bahnhofplatz to Zermatt, Bahnhoftrain
    10h 57m
    CHF 126–432
  8. Fly to Lyon–Saint Exupéry Airport, train

    1. Fly from Francisco De Sá Carneiro Airport (OPO) to Lyon–Saint Exupéry Airport (LYS)planeOPO - LYS
    2. Take the train from Lyon Part Dieu to Genevetrain
    3. Take the train from Genève to Visptrain
    12h 22m
    CHF 134–421
  9. Bus, train via Lyon

    1. Take the bus from Porto - Hospital de São João to Lyon, Perrache Bus Stationbus
    2. Take the bus from Lyon, Perrache Bus Station to Geneva - Bus stationbus
    3. Take the train from Genève to VisptrainIr
    33h 5m
    CHF 134–256

Porto to Zermatt by bus and train

Calendar3Weekly Services
Duration32h 53mAverage Duration
TicketCHF 163Cheapest Price
See schedules

Questions & Answers

What companies run services between Porto, Portugal and Zermatt, Switzerland?

There is no direct connection from Porto to Zermatt. However, you can take the subway to Aeroporto Francisco Sá Carneiro (OPO) Metro, walk to Francisco De Sá Carneiro Airport (OPO) airport, fly to Geneva International Airport (GVA), walk to Genève-Aéroport, take the train to Visp, then take the train to Zermatt, Bahnhof. Alternatively, you can take a bus from Porto to Zermatt, Bahnhof via Martigny, Martigny, and Visp in around 32h 53m.

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