There are 11 ways to get from Porto to Locarno by plane, train, bus, train (Renfe, Trenitalia), 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 Milano Malpensa Airport, train
best- 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 31mCHF 45–164Bus, train via Lyon
- Take the bus from Porto - TIC Campanhã to Lyon - Perrache Bus Stationbus
- Take the train from Lyon Part Dieu to Genevetrain Ter
- Take the train from Genève to Locarnotrain Ic
30h 28mCHF 228–442Train
- 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 23mCHF 211–317Drive 1,908.4 km
- Drive from Porto to Locarnocar 1,908.4 km
20h 41mCHF 298–430Fly to Milan Linate Airport, train
- 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–214Fly 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 46mCHF 108–265Fly 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 63–257Fly 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 8mCHF 74–253Fly 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 7mCHF 157–402Bus, train
- Take the bus from Porto - Terminal Intermodal de Campanhã to Estação Rodoviária de Viseubus
- Take the bus from Viseu to Lausannebus
- Take the train from Lausanne to Domodossolatrain Ec
- Take the bus from Domodossola, stazione to Locarno, Stazionebus Ev
33h 38mCHF 158–273Bus, train #2
- Take the bus from Porto to Lyonbus
- Take the bus from Lyon to Genevabus
- Take the train from Genève to Locarnotrain Ic
34h 25mCHF 220–399
Porto to Locarno by bus and train
Questions & Answers
The cheapest way to get from Porto to Locarno is to fly and train which costs SFr 45 - SFr 170 and takes 7h 31m.
The fastest way to get from Porto to Locarno is to fly and train which takes 7h 31m and costs SFr 45 - SFr 170.
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 23m.
The distance between Porto and Locarno is 1607 km. The road distance is 1908.4 km.
The best way to get from Porto to Locarno without a car is to bus and train via Lyon which takes 30h 28m and costs SFr 220 - SFr 450.
It takes approximately 7h 31m 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:22 PM in Porto and 10:22 PM 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 23m.
- Website
- easyjet.com
Flights from Francisco De Sá Carneiro Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 25m
- When
- Tuesday, Thursday, and Saturday
- Estimated price
- CHF 26–110
Flights from Francisco De Sá Carneiro Airport to Milano Malpensa Airport via Nantes
- Ave. Duration
- 5h 40m
- When
- Friday
- Estimated price
- CHF 26–110
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–180
Flights from Francisco De Sá Carneiro Airport to Milan Linate Airport via Paris Orly
- Ave. Duration
- 5h 25m
- When
- Monday, Wednesday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- CHF 30–180
Flights from Francisco De Sá Carneiro Airport to Zurich Airport
- Ave. Duration
- 2h 32m
- When
- Every day
- Estimated price
- CHF 35–110
Flights from Francisco De Sá Carneiro Airport to Basel
- Ave. Duration
- 2h 27m
- When
- Every day
- Estimated price
- CHF 40–210
Flights from Francisco De Sá Carneiro Airport to Basel via Bordeaux
- Ave. Duration
- 4h 15m
- When
- Friday
- Estimated price
- CHF 40–210
Flights from Francisco De Sá Carneiro Airport to Basel via Nice
- Ave. Duration
- 5h 25m
- When
- Sunday
- Estimated price
- CHF 40–210
Flights from Francisco De Sá Carneiro Airport to Geneva International Airport
- Ave. Duration
- 2h 16m
- When
- Every day
- Estimated price
- CHF 30–160
Flights from Francisco De Sá Carneiro Airport to Geneva International Airport via Nice
- Ave. Duration
- 4h 47m
- When
- Monday and Sunday
- Estimated price
- CHF 30–160
- Website
- swiss.com
Flights from Francisco De Sá Carneiro Airport to Zurich Airport
- Ave. Duration
- 2h 31m
- When
- Every day
- Estimated price
- CHF 50–120
Flights from Francisco De Sá Carneiro Airport to Geneva International Airport
- Ave. Duration
- 2h 15m
- When
- Every day
- Estimated price
- CHF 60–250
- Website
- flytap.com
Flights from Francisco De Sá Carneiro Airport to Zurich Airport
- Ave. Duration
- 2h 31m
- When
- Every day
- Estimated price
- CHF 50–120
Flights from Francisco De Sá Carneiro Airport to Geneva International Airport
- Ave. Duration
- 2h 15m
- When
- Every day
- Estimated price
- CHF 60–250
- Website
- ryanair.com
Flights from Francisco De Sá Carneiro Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 40m
- When
- Monday, Thursday, Saturday, and Sunday
- Estimated price
- CHF 40–160
Flights from Francisco De Sá Carneiro Airport to Il Caravaggio International Airport
- Ave. Duration
- 2h 40m
- When
- Every day
- Estimated price
- CHF 45–160
- 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 70–190
- Website
- comlux.com
Flights from Francisco De Sá Carneiro Airport to Zurich Airport
- Ave. Duration
- 2h 30m
- When
- Wednesday
- Estimated price
- CHF 55–320
- Website
- flexflight.dk
Flights from Francisco De Sá Carneiro Airport to Zurich Airport
- Ave. Duration
- 2h 30m
- When
- Wednesday
- Estimated price
- CHF 55–320
- Phone
- +41 848 446 688
- Website
- sbb.ch
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 22–40
- Website
- https://www.sbb.ch/en
Train from Genève to Locarno
- Ave. Duration
- 5h 3m
- Frequency
- Once a week
- Estimated price
- CHF 120–230
- Website
- https://www.sbb.ch/en
Train from Milano Centrale to Locarno
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- CHF 35–70
- Website
- https://www.sbb.ch/en
Train from Zürich HB to Bellinzona
- Ave. Duration
- 1h 39m
- Frequency
- Hourly
- Estimated price
- CHF 50–90
- Website
- https://www.sbb.ch/en
Train from Basel SBB to Bellinzona
- Ave. Duration
- 2h 38m
- Frequency
- Every 3 hours
- Estimated price
- CHF 70–130
- Website
- https://www.sbb.ch/en
Train from Genève-Aéroport to Locarno
- Ave. Duration
- 5h 12m
- Frequency
- Once a week
- Estimated price
- CHF 120–220
- Website
- https://www.sbb.ch/en
Train from Lausanne to Domodossola
- Ave. Duration
- 2h
- Frequency
- 5 times a day
- Estimated price
- CHF 55–110
- Website
- https://www.sbb.ch/en
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
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/
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/
- Phone
- +33 1 84 94 36 35
- Website
- track.effiliation.com
Train from Lyon Part Dieu to Geneve
- Ave. Duration
- 1h 57m
- Frequency
- Every 3 hours
- Estimated price
- CHF 25–55
- Website
- https://track.effiliation.com/servlet/effi.redir?id_compteur=23007591&url=https%3A%2F%2Fwww.sncf-connect.com%2Fen-en%2F
- 2nd Class
- CHF 25–40
- Rail 1st Class
- CHF 35–55
- Phone
- +33 1 84 94 36 35
- Website
- sncf-connect.com
Train from Lyon Part Dieu to Geneve
- Ave. Duration
- 1h 50m
- Frequency
- 5 times a week
- Estimated price
- CHF 30–65
- Website
- https://www.sncf-connect.com/en-en
- 2nd Class
- CHF 30–40
- 1st Class
- CHF 50–65
- 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 45–65
- 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 23–35
- Website
- https://www.trenitalia.com/en.html
- 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 2 hours
- Schedules at
- sob.ch
Train from Basel SBB to Bellinzona
- Ave. Duration
- 3h 56m
- 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 16–21
- Schedules at
- sbb-deutschland.de
- Phone
- +3-389-268-0068
- Website
- blablacar.co.uk
Bus from Porto - TIC Campanhã to Lyon - Perrache Bus Station
- Ave. Duration
- 21h 10m
- Frequency
- Once daily
- Estimated price
- CHF 80–120
- Website
- https://www.blablacar.co.uk/bus
Bus from Viseu to Lausanne
- Ave. Duration
- 24h 35m
- Frequency
- Once daily
- Estimated price
- CHF 85–130
- Website
- https://www.blablacar.co.uk/bus
- 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 1–11
- Website
- https://rede-expressos.pt
- Online ticket
- CHF 1–11
- Phone
- +41 (0)91 756 04 00
- fart@centovalli.ch
- Website
- centovalli.ch
Bus from Domodossola, stazione to Locarno, Stazione
- Ave. Duration
- 1h 54m
- Frequency
- Once daily
- Estimated price
- CHF 13–19
- Website
- Autolinee FART
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Porto to Lyon
- Ave. Duration
- 25h
- Frequency
- 6 times a week
- Estimated price
- CHF 90–160
- Website
- https://www.flixbus.co.uk
Bus from Lyon to Geneva
- Ave. Duration
- 2h 15m
- Frequency
- Every 3 hours
- Estimated price
- CHF 8–15
- 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
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide
More Questions & Answers
There are 2690+ hotels available in Locarno.




















































