There are 12 ways to get from St. Moritz to Porto by train, plane, bus, 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.
Train, train to Zurich Airport, fly
best- Take the train from St. Moritz to Chur
- Take the train from Chur to Zürich HB
- Fly from Zurich Airport (ZRH) to Francisco De Sá Carneiro Airport (OPO)ZRH - OPO
8h 53m€114–291Bus, train to Milan Linate Airport, fly
cheapest- Take the bus from St. Moritz, Bahnhof to Chiavenna, Stazione
- Take the train from Colico to Monza
- Fly from Milan Linate Airport (LIN) to Francisco De Sá Carneiro Airport (OPO)LIN - OPO
10h 58m€52–245Train, bus
- Take the train from St. Moritz to ChurGex / ...
- Take the train from Chur to NyonIc
- Take the bus from Geneva to Penafiel
- Take the train from Penafiel to Porto Sao Bento874 / ...
37h 22m€286–463Drive 2,023 km
- Drive from St. Moritz to Porto2,023 km
21h 57m€347–501Train, train to Basel, fly
- Take the train from St. Moritz to Chur
- Take the train from Chur to Basel SBB
- Fly from Basel (BSL) to Francisco De Sá Carneiro Airport (OPO)BSL - OPO
10h 58m€116–377Bus, train, bus to Il Caravaggio International Airport, fly
- Take the bus from St. Moritz, Bahnhof to Chiavenna, Stazione
- Take the train from Colico to Milano Centrale
- Take the bus from Piazza Luigi di Savoia to Bergamo Airport Bus Station
- Fly from Il Caravaggio International Airport (BGY) to Francisco De Sá Carneiro Airport (OPO)BGY - OPO
11h 18m€85–319Bus, train, train to Milano Malpensa Airport, fly
- Take the bus from St. Moritz, Bahnhof to Chiavenna, Stazione
- Take the train from Colico to Milano Centrale
- Take the train from Milano Centrale to Malpensa Aeroporto T1
- Fly from Milano Malpensa Airport (MXP) to Francisco De Sá Carneiro Airport (OPO)MXP - OPO
11h 30m€55–187Train, train to Allgäu Airport, Memmingen, fly
- Take the train from St. Moritz to Chur
- Take the train from Chur to St. Margrethen SG
- Take the train from St. Margrethen Sg to Memmingen
- Fly from Allgäu Airport, Memmingen (FMM) to Francisco De Sá Carneiro Airport (OPO)FMM - OPO
11h 40mTrain, bus via Brig
- Take the train from St. Moritz to Brig901
- Take the train from Brig to MartignyIr / ...
- Take the bus from Martigny to Porto
38h 3mTrain, bus via Brig #2
- Take the train from St. Moritz to Brig901
- Take the train from Brig to GenèveEc / ...
- Take the bus from Geneva - Bus station to Lyon, Perrache Bus Station
- Take the bus from Lyon, Perrache Bus Station to Porto - Hospital de São João
38h 22mTrain, bus #2
- Take the train from St. Moritz to ChurGex / ...
- Take the train from Chur to Zürich HBIc3 / ...
- Take the bus from Zurich Bus Station to Coimbra
- Take the train from Coimbra-B to Porto CampanhaIc / ...
39h 24m€219–349Bus
- Take the bus from St. Moritz, Bahnhof to Chur, Postautostation182
- Take the bus from Chur station train station to Bregenz bus station076
- Take the bus from Bregenz bus station to Bern106
- Take the bus from Bern to Viseu
- Take the bus from Estação Rodoviária de Viseu to Porto - Terminal Intermodal de Campanhã
39h 36m€139–202
St. Moritz to Porto by train, foot, and bus
Questions & Answers
The cheapest way to get from St. Moritz to Porto is to bus and train and fly which costs €50 - €190 and takes 11h 30m.
The fastest way to get from St. Moritz to Porto is to train and fly which takes 8h 53m and costs €110 - €300.
No, there is no direct bus from St. Moritz to Porto. However, there are services departing from St. Moritz, Bahnhof and arriving at Porto - Terminal Intermodal de Campanhã via Chur station train station, Bregenz bus station, Bern and Estação Rodoviária de Viseu. The journey, including transfers, takes approximately 39h 36m.
The distance between St. Moritz and Porto is 1751 km. The road distance is 2023 km.
The best way to get from St. Moritz to Porto without a car is to train and bus which takes 37h 22m and costs €280 - €470.
It takes approximately 8h 53m to get from St. Moritz to Porto, including transfers.
St. Moritz to Porto bus services, operated by PostAuto Schweiz AG, depart from St. Moritz, Bahnhof station.
St. Moritz to Porto bus services, operated by PostAuto Schweiz AG, arrive at Chur, Postautostation.
Porto is 1h behind St. Moritz. It is currently 10:03 PM in St. Moritz and 9:03 PM in Porto.
Yes, the driving distance between St. Moritz to Porto is 2023 km. It takes approximately 21h 57m to drive from St. Moritz to Porto.
What companies run services between St. Moritz, Switzerland and Porto, Portugal?
You can take a bus from St. Moritz, Bahnhof to Porto - Terminal Intermodal de Campanhã via Chur, Postautostation, Chur station train station, Bregenz bus station, Bern, and Estação Rodoviária de Viseu in around 39h 36m.
- Website
- easyjet.com
Flights from Zurich Airport to Francisco De Sá Carneiro Airport
- Ave. Duration
- 2h 44m
- When
- Every day
- Estimated price
- €40–130
Flights from Milan Linate Airport to Francisco De Sá Carneiro Airport
- Ave. Duration
- 2h 45m
- When
- Monday, Thursday, Friday, and Sunday
- Estimated price
- €30–200
Flights from Milan Linate Airport to Francisco De Sá Carneiro Airport via Paris Orly
- Ave. Duration
- 6h 5m
- When
- Sunday
- Estimated price
- €30–200
Flights from Basel to Francisco De Sá Carneiro Airport
- Ave. Duration
- 2h 41m
- When
- Every day
- Estimated price
- €45–220
Flights from Basel to Francisco De Sá Carneiro Airport via Bordeaux
- Ave. Duration
- 5h 25m
- When
- Monday and Tuesday
- Estimated price
- €45–220
Flights from Basel to Francisco De Sá Carneiro Airport via Nantes
- Ave. Duration
- 5h 10m
- When
- Friday
- Estimated price
- €45–220
Flights from Milano Malpensa Airport to Francisco De Sá Carneiro Airport
- Ave. Duration
- 2h 45m
- When
- Tuesday, Thursday, Saturday, and Sunday
- Estimated price
- €28–90
Flights from Milano Malpensa Airport to Francisco De Sá Carneiro Airport via Bordeaux
- Ave. Duration
- 4h 55m
- When
- Monday, Tuesday, Thursday, and Sunday
- Estimated price
- €28–90
- Website
- ryanair.com
Flights from Il Caravaggio International Airport to Francisco De Sá Carneiro Airport
- Ave. Duration
- 2h 40m
- When
- Every day
- Estimated price
- €65–200
Flights from Il Caravaggio International Airport to Francisco De Sá Carneiro Airport via Marseille
- Ave. Duration
- 4h 35m
- When
- Friday and Sunday
- Estimated price
- €65–200
Flights from Il Caravaggio International Airport to Francisco De Sá Carneiro Airport via Madrid
- Ave. Duration
- 5h 6m
- When
- Tuesday, Thursday, Saturday, and Sunday
- Estimated price
- €65–200
Flights from Il Caravaggio International Airport to Francisco De Sá Carneiro Airport via Valencia
- Ave. Duration
- 5h 15m
- When
- Friday
- Estimated price
- €65–200
Flights from Milano Malpensa Airport to Francisco De Sá Carneiro Airport
- Ave. Duration
- 2h 40m
- When
- Tuesday, Thursday, Saturday, and Sunday
- Estimated price
- €50–160
Flights from Milano Malpensa Airport to Francisco De Sá Carneiro Airport via Valencia
- Ave. Duration
- 5h 5m
- When
- Monday, Wednesday, Thursday, Saturday, and Sunday
- Estimated price
- €50–160
Flights from Allgäu Airport, Memmingen to Francisco De Sá Carneiro Airport
- Ave. Duration
- 2h 50m
- When
- Monday, Tuesday, Wednesday, Friday, Saturday, and Sunday
- Estimated price
- €80–180
Flights from Allgäu Airport, Memmingen to Francisco De Sá Carneiro Airport via Valencia
- Ave. Duration
- 5h 5m
- When
- Monday, Tuesday, and Saturday
- Estimated price
- €80–180
Flights from Allgäu Airport, Memmingen to Francisco De Sá Carneiro Airport via London Stansted
- Ave. Duration
- 5h 22m
- When
- Tuesday and Saturday
- Estimated price
- €80–180
Flights from Allgäu Airport, Memmingen to Francisco De Sá Carneiro Airport via Rome
- Ave. Duration
- 6h 20m
- When
- Saturday
- Estimated price
- €80–180
- Website
- swiss.com
Flights from Zurich Airport to Francisco De Sá Carneiro Airport
- Ave. Duration
- 2h 45m
- When
- Every day
- Estimated price
- €55–160
Flights from Zurich Airport to Francisco De Sá Carneiro Airport via Geneva
- Ave. Duration
- 5h 30m
- When
- Tuesday, Wednesday, Thursday, Saturday, and Sunday
- Estimated price
- €60–140
- Website
- flytap.com
Flights from Zurich Airport to Francisco De Sá Carneiro Airport
- Ave. Duration
- 2h 45m
- When
- Every day
- Estimated price
- €55–160
- Website
- iberia.com
Flights from Milan Linate Airport to Francisco De Sá Carneiro Airport via Madrid
- Ave. Duration
- 5h 30m
- When
- Every day
- Estimated price
- €85–210
- Website
- comlux.com
Flights from Zurich Airport to Francisco De Sá Carneiro Airport
- Ave. Duration
- 2h 40m
- When
- Wednesday
- Estimated price
- €100–550
- Website
- flexflight.dk
Flights from Zurich Airport to Francisco De Sá Carneiro Airport
- Ave. Duration
- 2h 40m
- When
- Wednesday
- Estimated price
- €100–550
- Phone
- +41 81 288 65 65
- Website
- rhb.ch
Train from St. Moritz to Chur
- Ave. Duration
- 1h 57m
- Frequency
- Hourly
- Website
- https://www.rhb.ch/en/home
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from St. Moritz to Chur
- Ave. Duration
- 1h 57m
- Frequency
- Once daily
- Estimated price
- €40–65
- Website
- https://www.sbb.ch/en
Train from Chur to Zürich HB
- Ave. Duration
- 1h 14m
- Frequency
- Hourly
- Estimated price
- €24–45
- Website
- https://www.sbb.ch/en
Train from Chur to Nyon
- Ave. Duration
- 4h 6m
- Frequency
- 6 times a week
- Estimated price
- €120–210
- Website
- https://www.sbb.ch/en
Train from Chur to Basel SBB
- Ave. Duration
- 2h 20m
- Frequency
- Every 4 hours
- Estimated price
- €40–85
- Website
- https://www.sbb.ch/en
Train from Brig to Martigny
- Ave. Duration
- 50 min
- Frequency
- Hourly
- Estimated price
- €15–35
- Website
- https://www.sbb.ch/en
Train from Brig to Genève
- Ave. Duration
- 2h 29m
- Frequency
- Every 30 minutes
- Estimated price
- €35–75
- Website
- https://www.sbb.ch/en
- Phone
- +41 58 580 70 70
- info@sob.ch
- Website
- sob.ch
Train from Chur to Zürich HB
- Ave. Duration
- 1h 37m
- Frequency
- Hourly
- Schedules at
- sob.ch
Train from Chur to St. Margrethen SG
- Ave. Duration
- 1h 1m
- Frequency
- Hourly
- Schedules at
- sob.ch
- Phone
- +351 210 900 032
- Website
- cp.pt
Train from Penafiel to Porto Sao Bento
- Ave. Duration
- 39 min
- Frequency
- Hourly
- Estimated price
- €4–5
- Website
- https://www.cp.pt/passageiros/en
Train from Coimbra-B to Porto Campanha
- Ave. Duration
- 1h 1m
- Frequency
- Hourly
- Estimated price
- €5–20
- Website
- https://www.cp.pt/passageiros/en
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Colico to Monza
- Ave. Duration
- 1h 11m
- Frequency
- Hourly
- Estimated price
- €4–6
- Website
- https://www.trenord.it/en/
Train from Colico to Milano Centrale
- Ave. Duration
- 1h 25m
- Frequency
- Hourly
- Estimated price
- €5–7
- Website
- https://www.trenord.it/en/
Train from Milano Centrale to Malpensa Aeroporto T1
- Ave. Duration
- 51 min
- Frequency
- Hourly
- Estimated price
- €4–6
- Website
- https://www.trenord.it/en/
- Phone
- +49 (0) 7531 915109
- info@sbb-deutschland.de
- Website
- sbb-deutschland.de
Train from Chur to Basel SBB
- Ave. Duration
- 2h 14m
- Frequency
- 4 times a day
- Estimated price
- €16–21
- Schedules at
- sbb-deutschland.de
- Phone
- +39 02-72494949
- Website
- malpensaexpress.it
Train from Milano Centrale to Malpensa Aeroporto T1
- Ave. Duration
- 51 min
- Frequency
- Hourly
- Estimated price
- €15
- Website
- https://www.malpensaexpress.it/en/
- Phone
- +43 5 1717
- Website
- oebb.at
Train from St. Margrethen Sg to Memmingen
- Ave. Duration
- 1h 7m
- Frequency
- Once daily
- Estimated price
- €44–45
- Website
- https://www.oebb.at/en/reiseplanung-services/im-zug/unsere-zuege/eurocity-intercity
- Website
- https://shop.oebbtickets.at/en/ticket
- Phone
- +41 81 288 65 65
- info@glacierexpress.ch
- Website
- glacierexpress.ch
Train from St. Moritz to Brig
- Ave. Duration
- 6h 33m
- Frequency
- Twice daily
- Schedules at
- glacierexpress.ch
- Phone
- +41 27 720 47 47
- info@regionalps.ch
- Website
- regionalps.ch
Train from Brig to Martigny
- Ave. Duration
- 1h 4m
- Frequency
- Hourly
- Estimated price
- €27–55
- Schedules at
- regionalps.ch
- 2nd Class Ticket
- €27–32
- 1st Class Ticket
- €45–55
- Phone
- +39 06 68475475
- ufficiogruppi@trenitalia.it
- Website
- trenitalia.com
Train from Brig to Martigny
- Ave. Duration
- 50 min
- Frequency
- Once daily
- Estimated price
- €24–70
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- €45–70
- 2nd Class
- €24–35
Train from Brig to Genève
- Ave. Duration
- 2h 11m
- Frequency
- 4 times a day
- Estimated price
- €45–95
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- €65–95
- 2nd Class
- €45–65
Rome2Rio's guide to FlixBus
Contact Details
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Geneva to Penafiel
- Ave. Duration
- 26h 30m
- Frequency
- 4 times a week
- Estimated price
- €120–180
- Website
- https://www.flixbus.co.uk
Bus from Martigny to Porto
- Ave. Duration
- 29h 30m
- Frequency
- 4 times a week
- Estimated price
- €140–200
- Website
- https://www.flixbus.co.uk
Bus from Zurich Bus Station to Coimbra
- Ave. Duration
- 33h 15m
- Frequency
- 3 times a week
- Estimated price
- €150–220
- Website
- https://www.flixbus.co.uk
Bus from Chur station train station to Bregenz bus station
- Ave. Duration
- 2h 5m
- Frequency
- Once daily
- Estimated price
- €7–11
- Website
- https://www.flixbus.co.uk
Bus from Bregenz bus station to Bern
- Ave. Duration
- 3h 40m
- Frequency
- Twice daily
- Estimated price
- €20–28
- Website
- https://www.flixbus.co.uk
- Phone
- +41 (0)848 818 818
- info@postauto.ch
- Website
- postauto.ch
Bus from St. Moritz, Bahnhof to Chiavenna, Stazione
- Ave. Duration
- 1h 38m
- Frequency
- Hourly
- Estimated price
- €5–8
- Website
- https://www.postauto.ch
Bus from St. Moritz, Bahnhof to Chur, Postautostation
- Ave. Duration
- 2h 30m
- Frequency
- Once daily
- Estimated price
- €7–11
- Website
- https://www.postauto.ch
- info@flibco.com
- Website
- flibco.com
Bus from Piazza Luigi di Savoia to Bergamo Airport Bus Station
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- €8–10
- Website
- https://www.flibco.com/en
- Phone
- +39 02 3008 9000
- mail@autostradale.it
- Website
- autostradale.it
Bus from Piazza Luigi di Savoia to Bergamo Airport Bus Station
- Ave. Duration
- 1h
- Frequency
- Every 30 minutes
- Estimated price
- €4–17
- Website
- https://autostradale.it/?lang=en-GB
- Standard Rate
- €13–17
- Phone
- +34 910 207 007
- alsa@alsa.es
- Website
- alsa.com
Bus from Geneva - Bus station to Lyon, Perrache Bus Station
- Ave. Duration
- 2h
- Frequency
- 4 times a week
- Estimated price
- €20–70
- Website
- https://www.alsa.com/en/
- Phone
- (+351) 258 454 303
- info@barquense.com
- Website
- barquense.pt
Bus from Lyon, Perrache Bus Station to Porto - Hospital de São João
- Ave. Duration
- 24h 38m
- Frequency
- Once a week
- Estimated price
- €70–95
- Schedules at
- barquense.pt
- Book at
- barquense.pt
- Phone
- +3-389-268-0068
- Website
- blablacar.co.uk
Bus from Bern to Viseu
- Ave. Duration
- 25h 45m
- Frequency
- Once daily
- Estimated price
- €100–140
- Website
- https://www.blablacar.co.uk/bus
- Phone
- +351 21 75 24 524
- Website
- rede-expressos.pt
Bus from Estação Rodoviária de Viseu to Porto - Terminal Intermodal de Campanhã
- Ave. Duration
- 1h 45m
- Frequency
- Hourly
- Estimated price
- €4–13
- Website
- https://rede-expressos.pt/en
Want to know more about travelling around Portugal
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
Want to know more about Flixbus?
Read the travel guide
Italy Travel Guides
Read the travel guide
More Questions & Answers
There are 6250+ hotels available in Porto.



























































































