There are 9 ways to get from Oslo to St. Moritz by train, plane, bus, car ferry, night train, car, or car train
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train, fly to Zurich Airport
best- Take the train from Oslo S to Oslo lufthavn stasjontrain
- Fly from Oslo Airport, Gardermoen (OSL) to Zurich Airport (ZRH)plane OSL - ZRH
- Take the train from Zürich HB to Churtrain
- Take the train from Chur to St. Moritztrain
9h 1mCHF 155–398Train, fly to Milano Malpensa Airport, bus
cheapest- Take the train from Oslo S to Oslo lufthavn stasjontrain
- Fly from Oslo Airport, Gardermoen (OSL) to Milano Malpensa Airport (MXP)plane OSL - MXP
- Take the train from Malpensa Aeroporto T1 to Milano Centraletrain
- Take the train from Milano Centrale to Colicotrain
- Take the bus from Chiavenna, Stazione to St. Moritz, Bahnhofbus
11h 54mCHF 71–226Train
- Take the train from Oslo S to Malmö Centralstationtrain
- Take the train from Malmö, Centralstation to Köpenhamn Htrain
- Take the train from København H to Hamburg-Altonatrain Rj / ...
- Take the train from Hamburg-Altona to Churtrain Ice
- Take the train from Chur to St. Moritztrain Gex / ...
27h 26mCHF 579–1,402Bus
- Take the bus from Oslo bussterminal to Berlin, Zentralen Omnibusbahnhofbus
- Take the bus from Berlin, Zentralen Omnibusbahnhof to Nuremberg central bus stationbus N34 / ...
- Take the bus from Nuremberg central bus station to Chur station train stationbus
- Take the bus from Chur, Postautostation to St. Moritz, Bahnhofbus 182
34hCHF 127–216Car ferry, train
- Take the car ferry from Oslo Vipperangen to Port of Kielcarferry
- Take the train from Kiel Hbf to Hamburg Hbftrain Re7
- Take the train from Hamburg-Altona to Churtrain Ice
- Take the train from Chur to St. Moritztrain Gex / ...
36h 31mCHF 570–1,525Train, fly to Milan Linate Airport, bus
- Take the train from Oslo S to Oslo lufthavn stasjontrain
- Fly from Oslo Airport, Gardermoen (OSL) to Milan Linate Airport (LIN)plane OSL - LIN
- Take the train from Monza to Colicotrain
- Take the bus from Chiavenna, Stazione to St. Moritz, Bahnhofbus
12h 50mCHF 123–383Bus, night train, train
- Take the bus from Oslo Bussterminal to Malmö C Norra Vallgatanbus 604 / ...
- Take the night train from Malmö, Centralstation to Innsbruck Hauptbahnhofnighttrain Nt
- Take the train from Innsbruck Hauptbahnhof to Landeck-Zamstrain Rjx / ...
- Take the bus from Landeck-Zams Bahnhof D to Mals Bahnhofbus 273
- Take the bus from Malles - Stazione to Zernez, staziunbus 811
36hDrive 2,028.8 km
- Drive from Oslo to St. Moritzcar 2,028.8 km
19h 6mCHF 339–490Drive, car train
- Drive from Oslo to Hamburg Hbfcar
- Take the car train from Hamburg Hbf to Augsburg Hbfcartrain
- Drive from Augsburg Hbf to St. Moritzcar
23h 3mCHF 312–436
Oslo to St. Moritz by train
Questions & Answers
The cheapest way to get from Oslo to St. Moritz is to train and fly and bus which costs SFr 70 - SFr 230 and takes 11h 54m.
The fastest way to get from Oslo to St. Moritz is to train and fly which takes 9h 1m and costs SFr 150 - SFr 400.
No, there is no direct bus from Oslo to St. Moritz. However, there are services departing from Oslo bussterminal and arriving at St. Moritz, Bahnhof via Berlin, Zentralen Omnibusbahnhof, Nuremberg central bus station and Chur, Postautostation. The journey, including transfers, takes approximately 34h.
No, there is no direct train from Oslo to St. Moritz. However, there are services departing from Oslo S and arriving at St. Moritz via Malmö, Centralstation, København H, Hamburg-Altona and Chur. The journey, including transfers, takes approximately 27h 26m.
The distance between Oslo and St. Moritz is 1682 km. The road distance is 2028.8 km.
The best way to get from Oslo to St. Moritz without a car is to train which takes 27h 26m and costs SFr 550 - SFr 1400.
It takes approximately 9h 1m to get from Oslo to St. Moritz, including transfers.
Oslo to St. Moritz bus services, operated by FlixBus, depart from Oslo bussterminal station.
Oslo to St. Moritz train services, operated by Norwegian Railways (VY), depart from Oslo S station.
The best way to get from Oslo to St. Moritz is to train which takes 27h 26m and costs SFr 550 - SFr 1400. Alternatively, you can bus, which costs SFr 120 - SFr 220 and takes 34h.
What companies run services between Oslo, Norway and St. Moritz, Switzerland?
You can take a train from Oslo S to St. Moritz via Malmö Centralstation, Malmö, Centralstation, Köpenhamn H, København H, Hamburg-Altona, and Chur in around 27h 26m. Alternatively, you can take a bus from Oslo bussterminal to St. Moritz, Bahnhof via Berlin, Zentralen Omnibusbahnhof, Nuremberg central bus station, Chur station train station, and Chur, Postautostation in around 34h.
- Website
- flysas.com
Flights from Oslo Airport, Gardermoen to Zurich Airport
- Ave. Duration
- 2h 20m
- When
- Every day
- Estimated price
- CHF 80–260
Flights from Oslo Airport, Gardermoen to Zurich Airport via Copenhagen
- Ave. Duration
- 4h 25m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- CHF 80–260
Flights from Oslo Airport, Gardermoen to Milano Malpensa Airport
- Ave. Duration
- 2h 40m
- When
- Monday, Wednesday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- CHF 50–270
Flights from Oslo Airport, Gardermoen to Milano Malpensa Airport via Copenhagen
- Ave. Duration
- 5h 9m
- When
- Every day
- Estimated price
- CHF 50–270
Flights from Oslo Airport, Gardermoen to Milan Linate Airport via Copenhagen
- Ave. Duration
- 5h 10m
- When
- Saturday and Sunday
- Estimated price
- CHF 65–450
- Website
- lufthansa.com
Flights from Oslo Airport, Gardermoen to Zurich Airport via Frankfurt
- Ave. Duration
- 4h 10m
- When
- Every day
- Estimated price
- CHF 85–330
Flights from Oslo Airport, Gardermoen to Milan Linate Airport via Frankfurt
- Ave. Duration
- 5h 6m
- When
- Every day
- Estimated price
- CHF 85–330
Flights from Oslo Airport, Gardermoen to Milan Linate Airport via Munich
- Ave. Duration
- 5h 45m
- When
- Every day
- Estimated price
- CHF 85–330
- Website
- norwegian.com
Flights from Oslo Airport, Gardermoen to Zurich Airport
- Ave. Duration
- 2h 20m
- When
- Thursday
- Estimated price
- CHF 60–210
Flights from Oslo Airport, Gardermoen to Milano Malpensa Airport
- Ave. Duration
- 2h 40m
- When
- Every day
- Estimated price
- CHF 45–250
- Website
- swiss.com
Flights from Oslo Airport, Gardermoen to Zurich Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- CHF 75–300
Flights from Oslo Airport, Gardermoen to Milano Malpensa Airport via Zurich Airport
- Ave. Duration
- 4h 30m
- When
- Every day
- Estimated price
- CHF 65–260
- Website
- brusselsairlines.com
Flights from Oslo Airport, Gardermoen to Milan Linate Airport via Brussels
- Ave. Duration
- 5h 35m
- When
- Monday, Wednesday, Thursday, and Friday
- Estimated price
- CHF 65–260
- Phone
- +47 23 15 90 00
- flytoget@flytoget.no
- Website
- flytoget.no
Train from Oslo S to Oslo lufthavn stasjon
- Ave. Duration
- 22 min
- Frequency
- Every 10 minutes
- Estimated price
- CHF 18–21
- Website
- https://flytoget.no/en/
- Phone
- +47 61 05 19 10
- tog@vy.no
- Website
- vy.no
Train from Oslo S to Oslo lufthavn stasjon
- Ave. Duration
- 23 min
- Frequency
- Every 20 minutes
- Estimated price
- CHF 9–14
- Website
- https://www.vy.no/en
- Book at
- https://www.vy.no/en/buy-tickets/train-and-bus-tickets
Train from Oslo S to Malmö Centralstation
- Ave. Duration
- 6h 13m
- Frequency
- 3 times a week
- Estimated price
- CHF 120–180
- Website
- https://www.vy.no/en
- Book at
- https://www.vy.no/en/buy-tickets/train-and-bus-tickets
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Zürich HB to Chur
- Ave. Duration
- 1h 15m
- Frequency
- Every 30 minutes
- Estimated price
- CHF 35–110
- Website
- https://www.sbb.ch/en
Train from Chur to St. Moritz
- Ave. Duration
- 1h 57m
- Frequency
- Once daily
- Estimated price
- CHF 27–80
- Website
- https://www.sbb.ch/en
Train from Hamburg-Altona to Chur
- Ave. Duration
- 10h 56m
- Frequency
- 4 times a week
- Estimated price
- CHF 330–1,000
- Website
- https://www.sbb.ch/en
- Phone
- +41 58 580 70 70
- Website
- sob.ch
Train from Zürich HB to Chur
- Ave. Duration
- 1h 36m
- Frequency
- Hourly
- Estimated price
- CHF 35–55
- Schedules at
- sob.ch
- Phone
- +41 81 288 65 65
- railservice@rhb.ch
- Website
- rhb.ch
Train from Chur to St. Moritz
- Ave. Duration
- 1h 57m
- Frequency
- Hourly
- Website
- https://www.rhb.ch/en/
- Phone
- +46 771-77 77 1
- bokningssupporten@oresundstag.se
- Website
- oresundstag.se
Train from Malmö, Centralstation to Köpenhamn H
- Ave. Duration
- 38 min
- Frequency
- Every 20 minutes
- Estimated price
- CHF 5–11
- Website
- https://www.oresundstag.se/en
- Phone
- +46 40 669 62 00
- snalltaget@snalltaget.se
- Website
- snalltaget.se
Train from Malmö, Centralstation to Köpenhamn H
- Ave. Duration
- 36 min
- Frequency
- Once daily
- Estimated price
- CHF 3–6
- Website
- https://www.snalltaget.se/en
Night train from Malmö, Centralstation to Innsbruck Hauptbahnhof
- Ave. Duration
- 21h 12m
- Frequency
- Once a week
- Estimated price
- CHF 150–240
- Website
- https://www.snalltaget.se/en
- Phone
- +47 70 13 14 15
- kundehenv@dsb.dk
- Website
- dsb.dk
Train from København H to Hamburg-Altona
- Ave. Duration
- 4h 54m
- Frequency
- Every 4 hours
- Estimated price
- CHF 95–140
- Website
- https://www.dsb.dk/en/
- Phone
- +49 30 2970
- Website
- bahn.de
Train from Kiel Hbf to Hamburg Hbf
- Ave. Duration
- 1h 14m
- Frequency
- Every 30 minutes
- Estimated price
- CHF 21–30
- Website
- https://int.bahn.de/en
- Phone
- +49 30 311 682904
- Website
- bahn.de
Train from Kiel Hbf to Hamburg Hbf
- Ave. Duration
- 1h 6m
- Frequency
- Every 3 hours
- Estimated price
- CHF 18–45
- Website
- https://int.bahn.de/en
Train from Innsbruck Hauptbahnhof to Landeck-Zams
- Ave. Duration
- 47 min
- Frequency
- Twice daily
- Estimated price
- CHF 12–29
- Website
- https://int.bahn.de/en
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Malpensa Aeroporto T1 to Milano Centrale
- Ave. Duration
- 56 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 4–5
- Website
- https://www.trenord.it/en/
Train from Milano Centrale to Colico
- Ave. Duration
- 1h 24m
- Frequency
- Hourly
- Estimated price
- CHF 6–8
- Website
- https://www.trenord.it/en/
Train from Monza to Colico
- Ave. Duration
- 1h 12m
- Frequency
- Hourly
- Estimated price
- CHF 4–5
- Website
- https://www.trenord.it/en/
Train from Innsbruck Hauptbahnhof to Landeck-Zams
- Ave. Duration
- 44 min
- Frequency
- Hourly
- Estimated price
- CHF 14–22
- Website
- https://www.oebb.at/en/reiseplanung-services/im-zug/unsere-zuege/railjet
- *
- CHF 14–22
Train from Innsbruck Hauptbahnhof to Landeck-Zams
- Ave. Duration
- 1h 2m
- Frequency
- Hourly
- Estimated price
- CHF 13–24
- Website
- https://www.oebb.at/en/
- Phone
- +43 5 1717
- Website
- oebb.at
Train from Innsbruck Hauptbahnhof to Landeck-Zams
- Ave. Duration
- 45 min
- Frequency
- Twice daily
- Estimated price
- CHF 14–24
- Website
- https://www.oebb.at/en/reiseplanung-services/im-zug/unsere-zuege/eurocity-intercity
- Website
- https://shop.oebbtickets.at/en/ticket
- Phone
- +43 1 89900
- meinenachricht@westbahn.at
- Website
- westbahn.at
Train from Innsbruck Hauptbahnhof to Landeck-Zams
- Ave. Duration
- 46 min
- Frequency
- 4 times a day
- Estimated price
- CHF 12–22
- Website
- https://westbahn.at/en/
- Phone
- +43 5 1717
- Website
- oebb.at
Train from Innsbruck Hauptbahnhof to Landeck-Zams
- Ave. Duration
- 45 min
- Frequency
- Once daily
- Estimated price
- CHF 7–16
- Website
- https://www.oebb.at/en/reiseplanung-services/im-zug/unsere-zuege/eurocity-intercity
- Website
- https://shop.oebbtickets.at/en/ticket?cref=oebb-header
- Phone
- +49 (0) 221 800 20 820
- info@urlaubs-express.de
- Website
- urlaubs-express.de
Car train from Hamburg Hbf to Augsburg Hbf
- Ave. Duration
- 8h 36m
- Frequency
- Twice a week
- Estimated price
- CHF 90–110
- Website
- https://urlaubs-express.de/?lang=en
Rome2Rio's guide to FlixBus
Contact Details
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- https://www.flixbus.fr
Bus from Oslo bussterminal to Berlin, Zentralen Omnibusbahnhof
- Ave. Duration
- 17h 30m
- Frequency
- 5 times a week
- Estimated price
- CHF 65–120
- Website
- https://www.flixbus.co.uk
Bus from Berlin, Zentralen Omnibusbahnhof to Nuremberg central bus station
- Ave. Duration
- 5h 15m
- Frequency
- 5 times a day
- Estimated price
- CHF 27–45
- Website
- https://www.flixbus.co.uk
Bus from Nuremberg central bus station to Chur station train station
- Ave. Duration
- 5h 40m
- Frequency
- Once daily
- Estimated price
- CHF 27–50
- Website
- https://www.flixbus.co.uk
- Phone
- +41 (0)848 818 818
- info@postauto.ch
- Website
- postauto.ch
Bus from Chur, Postautostation to St. Moritz, Bahnhof
- Ave. Duration
- 2h 35m
- Frequency
- Twice daily
- Estimated price
- CHF 7–10
- Website
- https://www.postauto.ch
Bus from Chiavenna, Stazione to St. Moritz, Bahnhof
- Ave. Duration
- 1h 38m
- Frequency
- Hourly
- Estimated price
- CHF 5–8
- Website
- https://www.postauto.ch
Bus from Malles - Stazione to Zernez, staziun
- Ave. Duration
- 1h 34m
- Frequency
- Hourly
- Estimated price
- CHF 5–8
- Website
- https://www.postauto.ch
- Phone
- +47 407 05070
- buss@vy.no
- Website
- vybuss.no
Bus from Oslo Bussterminal to Malmö C Norra Vallgatan
- Ave. Duration
- 7h 5m
- Frequency
- Every 4 hours
- Estimated price
- CHF 90–170
- Website
- https://www.vybuss.com/
- Phone
- +43 664 384 1360
- info@tlbus.at
- Website
- tlbus.at
Bus from Landeck-Zams Bahnhof D to Mals Bahnhof
- Ave. Duration
- 1h 35m
- Frequency
- Hourly
- Schedules at
- tlbus.at
- Phone
- +39 0471 220 880
- contact@suedtirolmobil.info
- Website
- suedtirolmobil.info
Bus from Malles - Stazione to Zernez, staziun
- Ave. Duration
- 1h 31m
- Frequency
- Hourly
- Website
- https://www.suedtirolmobil.info/en/#/
- Phone
- +45 99 56 19 00
- Website
- colorline.no
Car ferry from Oslo Vipperangen to Port of Kiel
- Ave. Duration
- 20h
- Frequency
- Once daily
- Estimated price
- CHF 194–397
- Website
- https://www.colorline.com/
- Car
- CHF 397
- No Car
- CHF 194
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
How to plan an amazing trip around Scandinavia
Read the travel guide
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide
Want to know more about Flixbus?
Read the travel guide
More Questions & Answers
Oslo to St. Moritz bus services, operated by FlixBus, arrive at Berlin, Zentralen Omnibusbahnhof station.
Oslo to St. Moritz train services, operated by Norwegian Railways (VY), arrive at Malmö Centralstation.
Yes, the driving distance between Oslo to St. Moritz is 2029 km. It takes approximately 19h 6m to drive from Oslo to St. Moritz.
Book your Oslo to St. Moritz train tickets online with Omio.
There are 1398+ hotels available in St. Moritz.















































































