There are 10 ways to get from Porto to Locarno by plane, train, train (Renfe), 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.
Fly to Milan Linate Airport, train
best- Fly from Francisco De Sá Carneiro Airport (OPO) to Milan Linate Airport (LIN)plane OPO - LIN
- Take the train from Monza to Locarnotrain
8h 12mCHF 45–224Train
- Take the train from Porto Campanha to Redondela De Galiciatrain Ic
- Take the train from Redondela De Galicia to Barcelona-Santstrain Alv
- Take the train from Barcelona-Sants to Lyon Part Dieutrain
- Take the train from Lyon Part Dieu to Milano Centraletrain Fr
- Take the train from Milano Centrale to Locarnotrain
31h 20mCHF 220–358Bus, train via Viseu
- Take the bus from Porto - Terminal Intermodal de Campanhã to Estação Rodoviária de Viseubus
- Take the bus from Viseu to Geneva - Bus Stationbus
- Take the train from Genève to Locarnotrain Ic
32h 31mCHF 169–282Drive 1,908.4 km
- Drive from Porto to Locarnocar 1,908.4 km
20h 41mCHF 309–447Fly to Zurich Airport, train
- Fly from Francisco De Sá Carneiro Airport (OPO) to Zurich Airport (ZRH)plane OPO - ZRH
- Take the train from Zürich HB to Bellinzonatrain
7h 41mCHF 89–237Fly to Milano Malpensa Airport, train
- Fly from Francisco De Sá Carneiro Airport (OPO) to Milano Malpensa Airport (MXP)plane OPO - MXP
- Take the train from Malpensa Aeroporto T1 to Mendrisiotrain
- Take the train from Mendrisio to Locarnotrain
7h 30mCHF 45–181Fly to Il Caravaggio International Airport, train
- Fly from Francisco De Sá Carneiro Airport (OPO) to Il Caravaggio International Airport (BGY)plane OPO - BGY
- Take the train from Milano Centrale to Locarnotrain
8h 29mCHF 73–317Fly to Geneva International Airport, train
- Fly from Francisco De Sá Carneiro Airport (OPO) to Geneva International Airport (GVA)plane OPO - GVA
- Take the train from Genève-Aéroport to Locarnotrain
11h 8mCHF 157–412Fly to Basel, train
- Fly from Francisco De Sá Carneiro Airport (OPO) to Basel (BSL)plane OPO - BSL
- Take the train from Basel SBB to Bellinzonatrain
9h 11mCHF 76–329Bus, train
- Take the bus from Porto to Martignybus
- Take the train from Martigny to Brigtrain Ir
- Take the train from Domodossola to Locarno FARTtrain 72 / ...
35h 6mCHF 69–260
Porto to Locarno by train
Questions & Answers
The cheapest way to get from Porto to Locarno is to fly and train which costs SFr 45 - SFr 190 and takes 7h 30m.
The fastest way to get from Porto to Locarno is to fly and train which takes 7h 30m and costs SFr 45 - SFr 190.
No, there is no direct train from Porto to Locarno. However, there are services departing from Porto Campanha and arriving at Locarno via Redondela De Galicia, Barcelona-Sants, Lyon Part Dieu and Milano Centrale. The journey, including transfers, takes approximately 31h 20m.
The distance between Porto and Locarno is 1652 km. The road distance is 1908.4 km.
The best way to get from Porto to Locarno without a car is to train which takes 31h 20m and costs SFr 220 - SFr 360.
It takes approximately 8h 12m to get from Porto to Locarno, including transfers.
Porto to Locarno train services, operated by Renfe Viajeros, depart from Porto Campanha station.
Locarno is 1h ahead of Porto. It is currently 9:59 AM in Porto and 10:59 AM in Locarno.
Porto to Locarno train services, operated by Renfe Viajeros, arrive at Redondela De Galicia station.
Yes, the driving distance between Porto to Locarno is 1908 km. It takes approximately 20h 41m to drive from Porto to Locarno.
What companies run services between Porto, Portugal and Locarno, Switzerland?
You can take a train from Porto Campanha to Locarno via Redondela De Galicia, Barcelona-Sants, Lyon Part Dieu, and Milano Centrale in around 31h 20m.
- Website
- easyjet.com
Flights from Francisco De Sá Carneiro Airport to Milan Linate Airport
- Ave. Duration
- 2h 30m
- When
- Monday, Thursday, Friday, and Sunday
- Estimated price
- CHF 30–200
Flights from Francisco De Sá Carneiro Airport to Milan Linate Airport via Paris Orly
- Ave. Duration
- 5h 25m
- When
- Thursday
- Estimated price
- CHF 30–200
Flights from Francisco De Sá Carneiro Airport to Zurich Airport
- Ave. Duration
- 2h 27m
- When
- Monday, Friday, and Sunday
- Estimated price
- CHF 35–120
Flights from Francisco De Sá Carneiro Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 25m
- When
- Tuesday and Saturday
- Estimated price
- CHF 26–85
Flights from Francisco De Sá Carneiro Airport to Geneva International Airport
- Ave. Duration
- 2h 16m
- When
- Every day
- Estimated price
- CHF 30–180
Flights from Francisco De Sá Carneiro Airport to Geneva International Airport via Nice
- Ave. Duration
- 5h
- When
- Sunday
- Estimated price
- CHF 30–180
Flights from Francisco De Sá Carneiro Airport to Geneva International Airport via Bordeaux
- Ave. Duration
- 5h 20m
- When
- Sunday
- Estimated price
- CHF 30–180
Flights from Francisco De Sá Carneiro Airport to Basel
- Ave. Duration
- 2h 26m
- When
- Every day
- Estimated price
- CHF 40–220
Flights from Francisco De Sá Carneiro Airport to Basel via Bordeaux
- Ave. Duration
- 4h 15m
- When
- Friday
- Estimated price
- CHF 40–220
- Website
- swiss.com
Flights from Francisco De Sá Carneiro Airport to Zurich Airport
- Ave. Duration
- 2h 31m
- When
- Every day
- Estimated price
- CHF 50–130
Flights from Francisco De Sá Carneiro Airport to Geneva International Airport
- Ave. Duration
- 2h 15m
- When
- Every day
- Estimated price
- CHF 55–310
- Website
- flytap.com
Flights from Francisco De Sá Carneiro Airport to Zurich Airport
- Ave. Duration
- 2h 31m
- When
- Every day
- Estimated price
- CHF 50–130
Flights from Francisco De Sá Carneiro Airport to Geneva International Airport
- Ave. Duration
- 2h 15m
- When
- Every day
- Estimated price
- CHF 55–310
- Website
- iberia.com
Flights from Francisco De Sá Carneiro Airport to Milan Linate Airport via Madrid
- Ave. Duration
- 5h
- When
- Every day
- Estimated price
- CHF 80–200
Flights from Francisco De Sá Carneiro Airport to Geneva International Airport via Madrid
- Ave. Duration
- 4h 32m
- When
- Every day
- Estimated price
- CHF 45–190
- Website
- ryanair.com
Flights from Francisco De Sá Carneiro Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 40m
- When
- Thursday and Sunday
- Estimated price
- CHF 40–190
Flights from Francisco De Sá Carneiro Airport to Il Caravaggio International Airport
- Ave. Duration
- 2h 40m
- When
- Every day
- Estimated price
- CHF 60–200
- Website
- comlux.com
Flights from Francisco De Sá Carneiro Airport to Zurich Airport
- Ave. Duration
- 2h 30m
- When
- Wednesday
- Estimated price
- CHF 85–550
- Website
- flexflight.dk
Flights from Francisco De Sá Carneiro Airport to Zurich Airport
- Ave. Duration
- 2h 30m
- When
- Wednesday
- Estimated price
- CHF 85–550
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Monza to Locarno
- Ave. Duration
- 1h 45m
- Frequency
- Hourly
- Estimated price
- CHF 5–7
- Website
- https://www.trenord.it/en/
Train from Milano Centrale to Locarno
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- CHF 7–10
- Website
- https://www.trenord.it/en/
Train from Malpensa Aeroporto T1 to Mendrisio
- Ave. Duration
- 1h 8m
- Frequency
- Hourly
- Estimated price
- CHF 4–6
- Website
- https://www.trenord.it/en/
Train from Mendrisio to Locarno
- Ave. Duration
- 57 min
- Frequency
- Hourly
- Estimated price
- CHF 4–6
- Website
- https://www.trenord.it/en/
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Porto Campanha to Redondela De Galicia
- Ave. Duration
- 2h 15m
- Frequency
- Twice daily
- Estimated price
- CHF 13–18
- Website
- https://www.renfe.com/es/en
Train from Redondela De Galicia to Barcelona-Sants
- Ave. Duration
- 13h 40m
- Frequency
- 6 times a week
- Estimated price
- CHF 95–130
- Website
- https://www.renfe.com/es/en
Train from Barcelona-Sants to Lyon Part Dieu
- Ave. Duration
- 5h 6m
- Frequency
- Once daily
- Estimated price
- CHF 50–70
- Website
- https://www.renfe.com/es/en
- Phone
- +39.06.5210550
- Website
- trenitalia.com
Train from Lyon Part Dieu to Milano Centrale
- Ave. Duration
- 4h 44m
- Frequency
- Twice daily
- Estimated price
- CHF 55–130
- Website
- https://www.trenitalia.com/en.html
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Genève to Locarno
- Ave. Duration
- 5h 4m
- Frequency
- Once a week
- Estimated price
- CHF 80–150
- Website
- https://www.sbb.ch/en
Train from Zürich HB to Bellinzona
- Ave. Duration
- 1h 37m
- Frequency
- Hourly
- Estimated price
- CHF 30–65
- Website
- https://www.sbb.ch/en
Train from Malpensa Aeroporto T1 to Mendrisio
- Ave. Duration
- 1h 8m
- Frequency
- Hourly
- Estimated price
- CHF 24–45
- Website
- https://www.sbb.ch/en
Train from Mendrisio to Locarno
- Ave. Duration
- 57 min
- Frequency
- Hourly
- Estimated price
- CHF 19–23
- Website
- https://www.sbb.ch/en
Train from Genève-Aéroport to Locarno
- Ave. Duration
- 5h 13m
- Frequency
- Once a week
- Estimated price
- CHF 120–220
- Website
- https://www.sbb.ch/en
Train from Basel SBB to Bellinzona
- Ave. Duration
- 2h 39m
- Frequency
- Every 2 hours
- Estimated price
- CHF 50–90
- Website
- https://www.sbb.ch/en
Train from Martigny to Brig
- Ave. Duration
- 49 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 14–35
- Website
- https://www.sbb.ch/en
- Phone
- +41 58 580 70 70
- info@sob.ch
- Website
- sob.ch
Train from Zürich HB to Bellinzona
- Ave. Duration
- 2h 55m
- Frequency
- Every 4 hours
- Schedules at
- sob.ch
Train from Basel SBB to Bellinzona
- Ave. Duration
- 3h 57m
- Frequency
- Every 4 hours
- Schedules at
- sob.ch
- Phone
- +49 (0) 7531 915109
- info@sbb-deutschland.de
- Website
- sbb-deutschland.de
Train from Basel SBB to Bellinzona
- Ave. Duration
- 3h 5m
- Frequency
- Once daily
- Estimated price
- CHF 17–22
- Schedules at
- sbb-deutschland.de
- Phone
- +41 27 720 47 47
- info@regionalps.ch
- Website
- regionalps.ch
Train from Martigny to Brig
- Ave. Duration
- 1h 8m
- Frequency
- Hourly
- Estimated price
- CHF 25–51
- Schedules at
- regionalps.ch
- 2nd Class Ticket
- CHF 25–29
- 1st Class Ticket
- CHF 45–51
- Phone
- +41 (0)91 756 04 00
- fart@centovalli.ch
- Website
- centovalli.ch
Train from Domodossola to Locarno FART
- Ave. Duration
- 1h 54m
- Frequency
- Hourly
- Estimated price
- CHF 9–14
- Website
- Autolinee FART
- Phone
- +351 21 75 24 524
- Website
- rede-expressos.pt
Bus from Porto - Terminal Intermodal de Campanhã to Estação Rodoviária de Viseu
- Ave. Duration
- 1h 45m
- Frequency
- Hourly
- Estimated price
- CHF 3–13
- Website
- https://rede-expressos.pt/en
- Phone
- +3-389-268-0068
- Website
- blablacar.co.uk
Bus from Viseu to Geneva - Bus Station
- Ave. Duration
- 23h 35m
- Frequency
- Once daily
- Estimated price
- CHF 85–120
- Website
- https://www.blablacar.co.uk/bus
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Porto to Martigny
- Ave. Duration
- 30h 35m
- Frequency
- 3 times a week
- Estimated price
- CHF 40–180
- Website
- https://www.flixbus.co.uk
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
Italian Lakes: Getting around by train
Read the travel guide
Italy Travel Guides
Read the travel guide
Getting to Milan from the airport
Read the travel guide
More Questions & Answers
There are 2501+ hotels available in Locarno.
















































