There are 6 ways to get from Portland to St. Moritz 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.
Fly to Zurich Airport, train
best- Fly from Portland International Airport (PDX) to Zurich Airport (ZRH)plane PDX - ZRH
- Take the train from Zürich HB to Churtrain
- Take the train from Chur to St. Moritztrain
19h 9mCHF 407–1,347Fly to Milan Linate Airport, train, bus
cheapest- Fly from Portland International Airport (PDX) to Milan Linate Airport (LIN)plane PDX - LIN
- Take the train from Monza to Colicotrain
- Take the bus from Chiavenna, Stazione to St. Moritz, Bahnhofbus
22h 15mCHF 265–972Fly to Basel, train
- Fly from Portland International Airport (PDX) to Basel (BSL)plane PDX - BSL
- Take the train from Basel SBB to Churtrain
- Take the train from Chur to St. Moritztrain
20h 49mCHF 397–1,377Fly to Milano Malpensa Airport, train, bus
- Fly from Portland International Airport (PDX) to Milano Malpensa Airport (MXP)plane PDX - 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
22h 14mCHF 298–875Fly to Innsbruck Airport, train
- Fly from Portland International Airport (PDX) to Innsbruck Airport (INN)plane PDX - INN
- Take the train from Innsbruck Hauptbahnhof to Sarganstrain
- Take the train from Chur to St. Moritztrain
24h 44mCHF 561–1,671Fly to Stuttgart Airport, train
- Fly from Portland International Airport (PDX) to Stuttgart Airport (STR)plane PDX - STR
- Take the train from Böblingen to Singentrain
- Take the train from Singen to Zürich HBtrain
- Take the train from Zürich HB to Churtrain
- Take the train from Chur to St. Moritztrain
23h 34mCHF 467–1,353
Portland International Airport (PDX) to Zurich Airport (ZRH) flights
Questions & Answers
The cheapest way to get from Portland to St. Moritz is to fly and train and bus which costs SFr 260 - SFr 1000 and takes 22h 15m.
The fastest way to get from Portland to St. Moritz is to fly and train which takes 19h 9m and costs SFr 400 - SFr 1400.
The distance between Portland and St. Moritz is 8853 km.
It takes approximately 19h 9m to get from Portland to St. Moritz, including transfers.
St. Moritz is 8h ahead of Portland. It is currently 12:48 PM in Portland and 8:48 PM in St. Moritz.
There are 2322+ hotels available in St. Moritz.
What companies run services between Portland, OR, USA and St. Moritz, Switzerland?
There is no direct connection from Portland to St. Moritz. However, you can take the vehicle to Portland Int'l Airport station, walk to Portland International Airport (PDX) airport, fly to Zurich Airport (ZRH), walk to Zürich Flughafen, take the train to Zürich HB, take the train to Chur, then take the train to St. Moritz. Alternatively, you can take the vehicle to Portland Int'l Airport station, walk to Portland International Airport (PDX) airport, fly to Basel (BSL), walk to Basel EuroAirport, Ankunft, take the line 50 bus to Basel, Bahnhof SBB, walk to Basel SBB, take the train to Chur, then take the train to St. Moritz.
- Website
- klm.com
Flights from Portland International Airport to Zurich Airport via Amsterdam Schiphol
- Ave. Duration
- 12h 25m
- When
- Monday, Wednesday, Friday, and Sunday
- Estimated price
- CHF 300–1,200
Flights from Portland International Airport to Basel via Amsterdam Schiphol
- Ave. Duration
- 12h 15m
- When
- Monday, Wednesday, Friday, and Sunday
- Estimated price
- CHF 330–1,400
Flights from Portland International Airport to Milan Linate Airport via Amsterdam Schiphol
- Ave. Duration
- 13h 35m
- When
- Monday, Wednesday, Friday, and Sunday
- Estimated price
- CHF 310–1,300
Flights from Portland International Airport to Innsbruck Airport via Amsterdam Schiphol
- Ave. Duration
- 17h 50m
- When
- Monday, Wednesday, Friday, and Sunday
- Estimated price
- CHF 450–1,800
Flights from Portland International Airport to Stuttgart Airport via Amsterdam Schiphol
- Ave. Duration
- 15h 58m
- When
- Monday, Wednesday, Friday, and Sunday
- Estimated price
- CHF 350–1,400
- Website
- britishairways.com
Flights from Portland International Airport to Zurich Airport via London Heathrow
- Ave. Duration
- 12h 45m
- When
- Monday, Wednesday, Friday, and Sunday
- Estimated price
- CHF 340–1,400
Flights from Portland International Airport to Basel via London Heathrow
- Ave. Duration
- 14h 20m
- When
- Friday
- Estimated price
- CHF 320–1,300
Flights from Portland International Airport to Milan Linate Airport via London Heathrow
- Ave. Duration
- 13h 35m
- When
- Monday, Wednesday, and Sunday
- Estimated price
- CHF 250–1,000
Flights from Portland International Airport to Milano Malpensa Airport via London Heathrow
- Ave. Duration
- 14h 25m
- When
- Friday
- Estimated price
- CHF 250–1,100
Flights from Portland International Airport to Stuttgart Airport via London Heathrow
- Ave. Duration
- 16h 40m
- When
- Wednesday and Sunday
- Estimated price
- CHF 340–1,400
- Website
- lufthansa.com
Flights from Portland International Airport to Basel via Frankfurt
- Ave. Duration
- 12h 40m
- When
- Thursday
- Estimated price
- CHF 350–1,100
Flights from Portland International Airport to Milan Linate Airport via Frankfurt
- Ave. Duration
- 13h 30m
- When
- Thursday
- Estimated price
- CHF 320–950
Flights from Portland International Airport to Milano Malpensa Airport via Frankfurt
- Ave. Duration
- 13h 10m
- When
- Thursday
- Estimated price
- CHF 280–850
Flights from Portland International Airport to Innsbruck Airport via Frankfurt, Vienna
- Ave. Duration
- 17h 35m
- When
- Thursday
- Estimated price
- CHF 500–1,500
Flights from Portland International Airport to Stuttgart Airport via Frankfurt
- Ave. Duration
- 12h 50m
- When
- Thursday
- Estimated price
- CHF 370–1,100
- Website
- condor.com
Flights from Portland International Airport to Zurich Airport via Frankfurt
- Ave. Duration
- 14h 45m
- When
- Thursday
- Estimated price
- CHF 310–950
Flights from Portland International Airport to Milano Malpensa Airport via Frankfurt
- Ave. Duration
- 20h 45m
- When
- Thursday
- Estimated price
- CHF 280–850
- Website
- airdolomiti.it
Flights from Portland International Airport to Basel via Frankfurt
- Ave. Duration
- 12h 40m
- When
- Thursday
- Estimated price
- CHF 350–1,100
Flights from Portland International Airport to Milano Malpensa Airport via Frankfurt
- Ave. Duration
- 13h 10m
- When
- Thursday
- Estimated price
- CHF 280–850
- Website
- easyjet.com
Flights from Portland International Airport to Milano Malpensa Airport via Amsterdam Schiphol
- Ave. Duration
- 12h 50m
- When
- Monday
- Estimated price
- CHF 270–1,100
Flights from Portland International Airport to Milano Malpensa Airport via Reykjavik Keflavik Nas
- Ave. Duration
- 17h
- When
- Monday, Tuesday, Thursday, and Saturday
- Estimated price
- CHF 280–1,100
- Website
- icelandair.com
Flights from Portland International Airport to Zurich Airport via Reykjavik Keflavik Nas
- Ave. Duration
- 12h 20m
- When
- Monday and Saturday
- Estimated price
- CHF 320–1,200
- Website
- westjet.com
Flights from Portland International Airport to Milano Malpensa Airport via Calgary, Paris Charles de Gaulle
- Ave. Duration
- 17h 55m
- When
- Monday, Wednesday, Friday, and Sunday
- Estimated price
- CHF 320–1,200
- Website
- austrian.com
Flights from Portland International Airport to Innsbruck Airport via Frankfurt, Vienna
- Ave. Duration
- 17h 35m
- When
- Thursday
- Estimated price
- CHF 500–1,500
- 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 Basel SBB to Chur
- Ave. Duration
- 2h 15m
- Frequency
- Every 3 hours
- Estimated price
- CHF 65–190
- Website
- https://www.sbb.ch/en
Train from Singen to Zürich HB
- Ave. Duration
- 51 min
- Frequency
- Hourly
- Estimated price
- CHF 21–65
- Website
- https://www.sbb.ch/en
- Phone
- +41 58 580 70 70
- info@sob.ch
- 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
- Website
- rhb.ch
Train from Chur to St. Moritz
- Ave. Duration
- 1h 57m
- Frequency
- Hourly
- Website
- https://www.rhb.ch/en/
- Phone
- +49 (0) 7531 915109
- info@sbb-deutschland.de
- Website
- sbb-deutschland.de
Train from Basel SBB to Chur
- Ave. Duration
- 2h 15m
- Frequency
- 4 times a day
- Estimated price
- CHF 15–19
- Schedules at
- sbb-deutschland.de
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Monza to Colico
- Ave. Duration
- 1h 12m
- Frequency
- Hourly
- Estimated price
- CHF 4–5
- Website
- https://www.trenord.it/en/
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 Innsbruck Hauptbahnhof to Sargans
- Ave. Duration
- 2h 36m
- Frequency
- Every 4 hours
- Estimated price
- CHF 28–45
- Website
- https://www.oebb.at/en/reiseplanung-services/im-zug/unsere-zuege/railjet
- *
- CHF 28–45
- Phone
- +43 5 1717
- Website
- oebb.at
Train from Innsbruck Hauptbahnhof to Sargans
- Ave. Duration
- 2h 36m
- Frequency
- Once daily
- Estimated price
- CHF 35–65
- Website
- https://www.oebb.at/en/reiseplanung-services/im-zug/unsere-zuege/eurocity-intercity
- Website
- https://shop.oebbtickets.at/en/ticket
- Phone
- +49 30 311 682904
- Website
- bahn.de
Train from Böblingen to Singen
- Ave. Duration
- 1h 36m
- Frequency
- Hourly
- Estimated price
- CHF 23–55
- Website
- https://int.bahn.de/en
- Phone
- +49 30 2970
- Website
- bahn.de
Train from Böblingen to Singen
- Ave. Duration
- 1h 45m
- Frequency
- 3 times a week
- Estimated price
- CHF 28–45
- Website
- https://int.bahn.de/en
- Phone
- +49 731 1550-0
- servicecenter@dbregiobus-rab.de
- Website
- meine-rab.de
Train from Böblingen to Singen
- Ave. Duration
- 1h 49m
- Frequency
- Twice a week
- Estimated price
- CHF 17–22
- Schedules at
- meine-rab.de
- Phone
- +41 (0)848 818 818
- info@postauto.ch
- Website
- 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
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
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide
5 delightfully under-the-radar French towns you need to visit
Read the travel guide
Italy Travel Guides
Read the travel guide



















































