Rome2Rio

How to get fromSpain to St. Moritzby plane, train, train (TGV, Renfe), 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 (TGV, Renfe), 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)plane plane BCN - ZRH
    2. Take the train from Zürich HB to Churtrain train
    3. Take the train from Chur to St. Moritztrain train
    8h 23m
    CHF 113–287
  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)plane plane BCN - MXP
    2. Take the train from Malpensa Aeroporto T1 to Milano Centraletrain train
    3. Take the train from Milano Centrale to Colicotrain train
    4. Take the bus from Chiavenna, Stazione to St. Moritz, Bahnhofbus bus
    10h 53m
    CHF 34–122
  3. Train

    1. Take the train from Barcelona-Sants to Valence Tgv Rhone-Alpes Sudtrain train Tgv
    2. Take the train from Valence Tgv Rhone-Alpes Sud to Dijon Villetrain train Tgv
    3. Take the train from Dijon Ville to Basel Sbbtrain train Tgv
    4. Take the train from Basel SBB to Churtrain train Ic3 / ...
    5. Take the train from Chur to St. Moritztrain train Gex / ...
    17h 5m
    CHF 193–486
  4. Bus

    1. Take the bus from Barcelona to Milanbus bus
    2. Take the bus from Milan to Comobus bus
    3. Take the bus from Como San Giovanni to Menaggio Piazza Romabus bus
    4. Take the bus from Menaggio, Hotel Bellavista to St. Moritz, Bahnhofbus bus 631
    21h 3m
    CHF 107–158
  5. Car ferry, train

    1. Take the carferry from Port de Barcelona to Port of Genoacarferry car ferry
    2. Take the train from Genova Piazza Principe to Monzatrain train
    3. Take the train from Monza to Tiranotrain train Re8
    4. Take the train from Tirano to St. Moritztrain train Re9 / ...
    30h 25m
  6. Fly Barcelona–El Prat Airport to Milan Linate Airport, train, bus

    1. Fly from Barcelona–El Prat Airport (BCN) to Milan Linate Airport (LIN)plane plane BCN - LIN
    2. Take the train from Monza to Colicotrain train
    3. Take the bus from Chiavenna, Stazione to St. Moritz, Bahnhofbus bus
    10h 16m
    CHF 45–194
  7. Fly Son Sant Joan Airport to Milano Malpensa Airport, train, bus

    1. Fly from Son Sant Joan Airport (PMI) to Milano Malpensa Airport (MXP)plane plane PMI - MXP
    2. Take the train from Malpensa Aeroporto T1 to Milano Centraletrain train
    3. Take the train from Milano Centrale to Colicotrain train
    4. Take the bus from Chiavenna, Stazione to St. Moritz, Bahnhofbus bus
    10h 41m
    CHF 43–198
  8. Fly Barcelona–El Prat Airport 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 Colicotrain train
    4. Take the bus from Chiavenna, Stazione to St. Moritz, Bahnhofbus bus
    10h 46m
    CHF 53–213
  9. Fly Son Sant Joan Airport to Il Caravaggio International Airport, bus, train

    1. Fly from Son Sant Joan Airport (PMI) to Il Caravaggio International Airport (BGY)plane plane PMI - 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 Colicotrain train
    4. Take the bus from Chiavenna, Stazione to St. Moritz, Bahnhofbus bus
    10h 29m
    CHF 66–214
  10. Fly Valencia Airport to Il Caravaggio International Airport, bus, train

    1. Fly from Valencia Airport (VLC) to Il Caravaggio International Airport (BGY)plane plane VLC - 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 Colicotrain train
    4. Take the bus from Chiavenna, Stazione to St. Moritz, Bahnhofbus bus
    10h 53m
    CHF 60–253
  11. Bus, train

    1. Take the bus from Barcelona - North Bus Station to Zürichbus bus
    2. Take the train from Zürich HB to Churtrain train Ice / ...
    3. Take the train from Chur to St. Moritztrain train Gex / ...
    22h 30m
    CHF 148–235
  12. Drive  1,071 km

    1. Drive from Barcelona to St. Moritzcar car 1,071 km
    12h 48m
    CHF 178–256

Spain to St. Moritz by train

Calendar42Weekly Trains
Duration17h 5mAverage Duration
TicketCHF 193Cheapest Price
See schedules

Comparing Your Travel Options

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, Valence Tgv Rhone-Alpes Sud, Dijon Ville, Basel Sbb, Basel SBB, and Chur in around 17h 5m. Alternatively, you can take a bus from Barcelona to St. Moritz, Bahnhof via Milan, Como San Giovanni, Menaggio Piazza Roma, and Menaggio, Hotel Bellavista in around 21h 3m.

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

Booking & Getting There