Rome2Rio

How to get fromSpain to St. Moritzby plane, train, train (Renfe, TGV), bus, car ferry or car

Find Transport to St. Moritz

See all options

There are 12 ways to get from Spain to St. Moritz by plane, train, train (Renfe, TGV), bus, car ferry, or car

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 Barcelona–El Prat Airport to Zurich Airport, train

    best
    1. Fly from Barcelona–El Prat Airport (BCN) to Zurich Airport (ZRH)planeBCN - ZRH
    2. Take the train from Zürich HB to Churtrain
    3. Take the train from Chur to St. Moritztrain
    8h 27m
    CHF 101–268
  2. Fly Barcelona–El Prat Airport to Milano Malpensa Airport, train, bus

    cheapest
    1. Fly from Barcelona–El Prat Airport (BCN) to Milano Malpensa Airport (MXP)planeBCN - MXP
    2. Take the train from Malpensa Aeroporto T1 to Milano Centraletrain
    3. Take the train from Milano Centrale to Colicotrain
    4. Take the bus from Chiavenna, Stazione to St. Moritz, Bahnhofbus
    10h 58m
    CHF 40–117
  3. Train

    1. Take the train from Barcelona-Sants to Lyon Part Dieutrain
    2. Take the train from Lyon Part Dieu to Dijon VilletrainTer
    3. Take the train from Dijon Ville to Zuerich HbtrainTgv
    4. Take the train from Zürich HB to ChurtrainIc3 / ...
    5. Take the train from Chur to St. MoritztrainGex / ...
    16h 13m
    CHF 173–422
  4. Bus, train

    1. Take the bus from Barcelona to Milanbus
    2. Take the train from Sesto S.Giovanni to ChiavennatrainR13
    3. Take the bus from Chiavenna, Stazione to St. Moritz, Bahnhofbus604 / ...
    21h 46m
    CHF 60–128
  5. Car ferry, train

    1. Take the car ferry from Port de Barcelona to Port of Genoacarferry
    2. Take the train from Genova P.Za Principe to Milano CentraletrainIc
    3. Take the train from Milano Centrale to Tiranotrain
    4. Take the train from Tirano to St. MoritztrainRe9 / ...
    30h
  6. Fly Son Sant Joan Airport to Milano Malpensa Airport, train, bus

    1. Fly from Son Sant Joan Airport (PMI) to Milano Malpensa Airport (MXP)planePMI - MXP
    2. Take the train from Malpensa Aeroporto T1 to Milano Centraletrain
    3. Take the train from Milano Centrale to Colicotrain
    4. Take the bus from Chiavenna, Stazione to St. Moritz, Bahnhofbus
    10h 52m
    CHF 45–147
  7. Fly Barcelona–El Prat Airport to Il Caravaggio International Airport, train, bus

    1. Fly from Barcelona–El Prat Airport (BCN) to Il Caravaggio International Airport (BGY)planeBCN - BGY
    2. Take the train from Milano Centrale to Colicotrain
    3. Take the bus from Chiavenna, Stazione to St. Moritz, Bahnhofbus
    10h 41m
    CHF 51–188
  8. Fly Son Sant Joan Airport to Il Caravaggio International Airport, train, bus

    1. Fly from Son Sant Joan Airport (PMI) to Il Caravaggio International Airport (BGY)planePMI - BGY
    2. Take the train from Milano Centrale to Colicotrain
    3. Take the bus from Chiavenna, Stazione to St. Moritz, Bahnhofbus
    10h 30m
    CHF 61–178
  9. Fly Valencia Airport to Il Caravaggio International Airport, train, bus

    1. Fly from Valencia Airport (VLC) to Il Caravaggio International Airport (BGY)planeVLC - BGY
    2. Take the train from Milano Centrale to Colicotrain
    3. Take the bus from Chiavenna, Stazione to St. Moritz, Bahnhofbus
    10h 53m
    CHF 60–258
  10. Fly Adolfo Suárez Madrid–Barajas Airport to Il Caravaggio International Airport, train, bus

    1. Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Il Caravaggio International Airport (BGY)planeMAD - BGY
    2. Take the train from Milano Centrale to Colicotrain
    3. Take the bus from Chiavenna, Stazione to St. Moritz, Bahnhofbus
    11h 22m
    CHF 69–258
  11. Bus

    1. Take the bus from Barcelona - North Bus Station to Milano, Autostazione Lampugnanobus
    2. Take the bus from Milano, Autostazione Lampugnano to Luganobus076 / ...
    3. Take the bus from Lugano, Stazione Nord to St. Moritz, Bahnhofbus631
    21h 51m
    CHF 57–146
  12. Drive 1,070.6 km

    1. Drive from Barcelona to St. Moritzcar1,070.6 km
    12h 41m
    CHF 171–246

Spain to St. Moritz by train

Calendar7Weekly Trains
Duration16h 13mAverage Duration
TicketCHF 173Cheapest Price
See schedules

Questions & Answers

What companies run services between Spain and St. Moritz, Switzerland?

You can take a train from Barcelona-Plaça De Catalunya to St. Moritz via Barcelona-Sants, Lyon Part Dieu, Dijon Ville, Zuerich Hb, Zürich HB, and Chur in around 16h 13m. Alternatively, you can take a bus from Barcelona - North Bus Station to St. Moritz, Bahnhof via Milano, Autostazione Lampugnano, Lugano, Via Ciani/Cornaredo, Lugano, Stazione, and Lugano, Stazione Nord in around 21h 51m.

Airlines
Train operators
Bus operators
Ferry 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

More Questions & Answers