Rome2Rio

How to get fromSt. Moritz to Barcelonaby train, plane, train (TGV, Renfe), bus, car ferry, or car

Find Transport to Barcelona

See all options

There are 11 ways to get from St. Moritz to Barcelona by train, plane, 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. Train, train to Zurich Airport, fly

    best
    1. Take the train from St. Moritz to Churtrain train
    2. Take the train from Chur to Zürich HBtrain train
    3. Fly from Zurich Airport (ZRH) to Barcelona–El Prat Airport (BCN)plane plane ZRH - BCN
    8h 6m
    €120–329
  2. Bus, train, train to Milano Malpensa Airport, fly

    cheapest
    1. Take the bus from St. Moritz, Bahnhof to Chiavenna, Stazionebus bus
    2. Take the train from Colico to Milano Centraletrain train
    3. Take the train from Milano Centrale to Malpensa Aeroporto T1train train
    4. Fly from Milano Malpensa Airport (MXP) to Barcelona–El Prat Airport (BCN)plane plane MXP - BCN
    10h 34m
    €39–120
  3. Train

    1. Take the train from St. Moritz to Churtrain train Gex / ...
    2. Take the train from Chur to Basel SBBtrain train Ic3 / ...
    3. Take the train from Mulhouse Ville to Valence Tgv Rhone-Alpes Sudtrain train Tgv
    4. Take the train from Valence Tgv Rhone-Alpes Sud to Barcelona-Santstrain train Tgv
    16h 44m
    €228–688
  4. Bus

    1. Take the bus from St. Moritz, Bahnhof to Cassarate, Monte Brèbus bus 631
    2. Take the bus from Lugano to Milano, Autostazione Lampugnanobus bus
    3. Take the bus from Milan to Barcelonabus bus
    20h 26m
    €95–160
  5. Train, car ferry

    1. Take the train from St. Moritz to Tiranotrain train R19 / ...
    2. Take the train from Tirano to Monzatrain train Re8
    3. Take the train from Monza to Genova Piazza Principetrain train
    4. Take the carferry from Port of Genoa to Port de Barcelonacarferry car ferry
    31h 35m
  6. Train, train to Basel, fly

    1. Take the train from St. Moritz to Churtrain train
    2. Take the train from Chur to Basel SBBtrain train
    3. Fly from Basel (BSL) to Barcelona–El Prat Airport (BCN)plane plane BSL - BCN
    9h 53m
    €89–494
  7. Bus, train to Milan Linate Airport, fly

    1. Take the bus from St. Moritz, Bahnhof to Chiavenna, Stazionebus bus
    2. Take the train from Colico to Monzatrain train
    3. Fly from Milan Linate Airport (LIN) to Barcelona–El Prat Airport (BCN)plane plane LIN - BCN
    9h 55m
    €57–217
  8. Bus, train, bus to Il Caravaggio International Airport, fly

    1. Take the bus from St. Moritz, Bahnhof to Chiavenna, Stazionebus bus
    2. Take the train from Colico to Milano Centraletrain train
    3. Take the bus from Piazza Luigi di Savoia to Milan Bergamo Orio al Serio Airportbus bus
    4. Fly from Il Caravaggio International Airport (BGY) to Barcelona–El Prat Airport (BCN)plane plane BGY - BCN
    10h 32m
    €61–239
  9. Bus, train via Saint-Marcel-lès-Valence

    1. Take the bus from St. Moritz, Bahnhof to Chiavenna, Stazionebus bus 604 / ...
    2. Take the train from Chiavenna to Milano Porta Garibalditrain train R13
    3. Take the train from Milano P.Garibaldi to Chambery Challes Les Eauxtrain train Tgv
    4. Take the train from Chambery Challes Les Eaux to Valence Tgv Rhone-Alpes Sudtrain train Ter
    5. Take the train from Valence Tgv Rhone-Alpes Sud to Barcelona-Santstrain train Tgv
    18h 25m
    €174–389
  10. Bus, train

    1. Take the bus from St. Moritz, Bahnhof to Lugano, Stazione Nordbus bus 631
    2. Take the train from Lugano to Milano Centraletrain train
    3. Take the bus from Milano, Autostazione Lampugnano to Barcelona - North Bus Stationbus bus
    21h 59m
    €125–260
  11. Drive 1,071.4 km

    1. Drive from St. Moritz to Barcelonacar car 1,071.4 km
    12h 53m
    €187–270

St. Moritz to Barcelona by train

Calendar17Weekly Trains
Duration16h 44mAverage Duration
Ticket€228Cheapest Price
See schedules

Questions & Answers

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

You can take a train from St. Moritz to Barcelona-Sants via Chur, Basel SBB, Mulhouse, Mulhouse Ville, and Valence Tgv Rhone-Alpes Sud in around 16h 44m. Alternatively, you can take a bus from St. Moritz, Bahnhof to Barcelona via Cassarate, Monte Brè, Lugano, Campus Universitario, Lugano, Via Ciani/Cornaredo, Lugano, and Milan in around 20h 26m.

Airlines
Train operators
Bus operators
Ferry operators

Want to know more about travelling around Spain

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