There are 11 ways to get from Porto to Lake Maggiore by plane, train, bus, train (Renfe, TGV, 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 Varesetrain
7h 7m€48–255Bus, train via Saint-Étienne
- Take the bus from Porto - Terminal Intermodal de Campanhã to Saint-Étienne - Rue Milleret Bus Stopbus
- Take the train from St Etienne Chateaucreux to Lyon Part Dieutrain Ter
- Take the train from Lyon Part Dieu to Milano Centraletrain Fr
- Take the train from Milano Centrale to Locarnotrain
29h 48m€197–314Train
- Take the train from Porto Campanha to Redondela De Galiciatrain Ic
- Take the train from Pontevedra 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
32h 39m€353–598Drive 1,867.4 km
- Drive from Porto to Stresacar 1,867.4 km
19h 42m€302–436Fly 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 Milano Cadorna to Laveno Mombello Lagotrain
7h 34m€64–285Fly 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 49m€105–279Fly to Il Caravaggio International Airport, bus, train
- Fly from Francisco De Sá Carneiro Airport (OPO) to Il Caravaggio International Airport (BGY)plane OPO - BGY
- Take the bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoiabus
- Take the train from Milano Centrale to Stresatrain
7h 54m€87–365Fly 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 13m€86–371Bus
- Take the bus from Porto - Terminal Intermodal de Campanhã to Lyon - Gerland Bus Stationbus
- Take the bus from Lyon - Gerland Bus Station to Turin - Vittorio Emanuele Bus Stationbus
- Take the bus from Turin to Milanbus 467 / ...
- Take the bus from Aeroporto Malpensa - Terminal 1 to Stresa - Imbarcaderobus 35
31h 14m€154–253Bus, train
- Take the bus from Porto to Martignybus
- Take the train from Martigny to Brigtrain R91
- Take the train from Domodossola to Locarno FARTtrain 72 / ...
35h 27m€204–319Bus, train #2
- Take the bus from Porto - Hospital de São João to Chambéry - Rue Dr Vernierbus
- Take the train from Chambery Challes Les Eaux to Genevetrain Ter
- Take the train from Genève to Locarnotrain Ic
36h 16m€214–319
Porto to Lake Maggiore by bus and train
Comparing Your Travel Options
The cheapest way to get from Porto to Lake Maggiore is to fly and train which costs €45 - €260 and takes 7h 7m.
The fastest way to get from Porto to Lake Maggiore is to fly and train which takes 7h 7m and costs €45 - €260.
No, there is no direct bus from Porto to Lake Maggiore. However, there are services departing from Porto - Terminal Intermodal de Campanhã and arriving at Stresa - Imbarcadero via Lyon - Gerland Bus Station, Turin and Aeroporto Malpensa - Terminal 1. The journey, including transfers, takes approximately 31h 14m.
No, there is no direct train from Porto to Lake Maggiore. However, there are services departing from Porto Campanha and arriving at Locarno via Redondela De Galicia, Pontevedra, Barcelona-Sants, Lyon Part Dieu and Milano Centrale. The journey, including transfers, takes approximately 32h 39m.
The distance between Porto and Lake Maggiore is 1559 km. The road distance is 1867.4 km.
The best way to get from Porto to Lake Maggiore without a car is to bus and train via Saint-Étienne which takes 29h 48m and costs €190 - €320.
It takes approximately 7h 7m to get from Porto to Lake Maggiore, including transfers.
Porto to Lake Maggiore bus services, operated by BlaBlaCar Bus, depart from Porto - Terminal Intermodal de Campanhã station.
Porto to Lake Maggiore train services, operated by Renfe Viajeros, depart from Porto Campanha station.
The best way to get from Porto to Lake Maggiore is to train which takes 32h 39m and costs €350 - €600. Alternatively, you can bus, which costs €150 - €260 and takes 31h 14m.
What companies run services between Porto, Portugal and Lake Maggiore, Italy?
You can take a train from Porto Campanha to Locarno via Redondela De Galicia, Pontevedra, Barcelona-Sants, Lyon Part Dieu, and Milano Centrale in around 32h 39m. Alternatively, you can take a bus from Porto - Terminal Intermodal de Campanhã to Stresa - Imbarcadero via Lyon - Gerland Bus Station, Turin, Milan, and Aeroporto Malpensa - Terminal 1 in around 31h 14m.
- Website
- easyjet.com
Flights from Francisco De Sá Carneiro Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 25m
- When
- Monday and Friday
- Estimated price
- €50–230
Flights from Francisco De Sá Carneiro Airport to Milano Malpensa Airport via Nantes
- Ave. Duration
- 5h 20m
- When
- Wednesday
- Estimated price
- €50–230
Flights from Francisco De Sá Carneiro Airport to Milan Linate Airport
- Ave. Duration
- 2h 35m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €45–230
Flights from Francisco De Sá Carneiro Airport to Zurich Airport
- Ave. Duration
- 2h 33m
- When
- Thursday, Monday, Wednesday, Saturday, and Sunday
- Estimated price
- €45–150
Flights from Francisco De Sá Carneiro Airport to Basel
- Ave. Duration
- 2h 27m
- When
- Every day
- Estimated price
- €50–220
Flights from Francisco De Sá Carneiro Airport to Basel via Nantes
- Ave. Duration
- 4h 27m
- When
- Friday and Monday
- Estimated price
- €50–220
Flights from Francisco De Sá Carneiro Airport to Basel via Bordeaux
- Ave. Duration
- 5h 10m
- When
- Friday and Monday
- Estimated price
- €50–220
- Website
- ryanair.com
Flights from Francisco De Sá Carneiro Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €55–190
Flights from Francisco De Sá Carneiro Airport to Il Caravaggio International Airport
- Ave. Duration
- 2h 30m
- When
- Every day
- Estimated price
- €50–250
Flights from Francisco De Sá Carneiro Airport to Il Caravaggio International Airport via Barcelona
- Ave. Duration
- 4h 37m
- When
- Monday, Saturday, and Thursday
- Estimated price
- €50–250
Flights from Francisco De Sá Carneiro Airport to Il Caravaggio International Airport via Valencia
- Ave. Duration
- 5h 5m
- When
- Friday
- Estimated price
- €50–250
- Website
- swiss.com
Flights from Francisco De Sá Carneiro Airport to Zurich Airport
- Ave. Duration
- 2h 32m
- When
- Every day
- Estimated price
- €60–170
Flights from Francisco De Sá Carneiro Airport to Zurich Airport via Geneva
- Ave. Duration
- 4h 35m
- When
- Every day
- Estimated price
- €60–170
- Website
- iberia.com
Flights from Francisco De Sá Carneiro Airport to Milan Linate Airport via Madrid
- Ave. Duration
- 5h 10m
- When
- Every day
- Estimated price
- €75–330
- Website
- flytap.com
Flights from Francisco De Sá Carneiro Airport to Zurich Airport
- Ave. Duration
- 2h 32m
- When
- Every day
- Estimated price
- €60–170
- Website
- comlux.com
Flights from Francisco De Sá Carneiro Airport to Zurich Airport
- Ave. Duration
- 2h 30m
- When
- Wednesday, Friday, and Saturday
- Estimated price
- €75–260
Flights from Francisco De Sá Carneiro Airport to Basel
- Ave. Duration
- 2h 30m
- When
- Saturday
- Estimated price
- €100–320
- Website
- flyulendo.com
Flights from Francisco De Sá Carneiro Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 30m
- When
- Monday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €24–130
- Phone
- +39 02 7249 4494
- [email protected]
- Website
- Trenord
Train from Malpensa Aeroporto T1 to Varese
- Ave. Duration
- 41 min
- Frequency
- Hourly
- Estimated price
- €4–5
- Website
- Trenord
Train from Milano Cadorna to Laveno Mombello Lago
- Ave. Duration
- 1h 31m
- Frequency
- Hourly
- Estimated price
- €5–8
- Website
- Trenord
Train from Malpensa Aeroporto T1 to Varese
- Ave. Duration
- 41 min
- Frequency
- Hourly
- Estimated price
- €12–19
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Milano Centrale to Locarno
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- €30–50
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Milano Centrale to Locarno
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- €30–50
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Zürich HB to Bellinzona
- Ave. Duration
- 1h 39m
- Frequency
- Hourly
- Estimated price
- €45–70
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Basel SBB to Bellinzona
- Ave. Duration
- 2h 38m
- Frequency
- Every 3 hours
- Estimated price
- €70–110
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Martigny to Brig
- Ave. Duration
- 57 min
- Frequency
- Every 30 minutes
- Estimated price
- €24–35
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Genève to Locarno
- Ave. Duration
- 5h 3m
- Frequency
- Once a week
- Estimated price
- €120–190
- Website
- Swiss Federal Railways (SBB CFF FFS)
- Phone
- +33 1 84 94 36 35
- Website
- Oui.SNCF
Train from St Etienne Chateaucreux to Lyon Part Dieu
- Ave. Duration
- 46 min
- Frequency
- Every 30 minutes
- Estimated price
- €10–18
- Website
- Oui.SNCF
Train from Chambery Challes Les Eaux to Geneve
- Ave. Duration
- 1h 24m
- Frequency
- Every 2 hours
- Estimated price
- €17–30
- Website
- Oui.SNCF
- Phone
- +33 1 84 94 36 35
- Website
- TGV inOui
Train from St Etienne Chateaucreux to Lyon Part Dieu
- Ave. Duration
- 46 min
- Frequency
- Every 4 hours
- Estimated price
- €11–18
- Website
- TGV inOui
Train from Barcelona-Sants to Lyon Part Dieu
- Ave. Duration
- 6h 4m
- Frequency
- Twice a week
- Estimated price
- €120–190
- Website
- TGV inOui
- Phone
- +39.06.5210550
- Website
- Trenitalia
Train from Lyon Part Dieu to Milano Centrale
- Ave. Duration
- 4h 44m
- Frequency
- 4 times a day
- Estimated price
- €50–75
- Website
- Trenitalia
Train from Lyon Part Dieu to Milano Centrale
- Ave. Duration
- 4h 44m
- Frequency
- 4 times a day
- Estimated price
- €50–75
- Website
- Trenitalia
- Phone
- +34 91 232 03 20
- Website
- Renfe Viajeros
Train from Porto Campanha to Redondela De Galicia
- Ave. Duration
- 2h 15m
- Frequency
- 4 times a day
- Estimated price
- €20–30
- Website
- Renfe Viajeros
Train from Pontevedra to Barcelona-Sants
- Ave. Duration
- 13h 52m
- Frequency
- Twice daily
- Estimated price
- €170–250
- Website
- Renfe Viajeros
Train from Barcelona-Sants to Lyon Part Dieu
- Ave. Duration
- 5h 6m
- Frequency
- Twice daily
- Estimated price
- €80–120
- Website
- Renfe Viajeros
- Phone
- +41 58 580 70 70
- Website
- Schweizerische Südostbahn AG
Train from Zürich HB to Bellinzona
- Ave. Duration
- 2h 55m
- Frequency
- Every 3 hours
- Estimated price
- €45–70
- Schedules at
- Schweizerische Südostbahn AG
Train from Basel SBB to Bellinzona
- Ave. Duration
- 3h 56m
- Frequency
- Every 4 hours
- Estimated price
- €65–100
- Schedules at
- Schweizerische Südostbahn AG
- Phone
- +39 06 68475475
- [email protected]
- Website
- Trenitalia Eurocity
Train from Milano Centrale to Stresa
- Ave. Duration
- 59 min
- Frequency
- 5 times a day
- Estimated price
- €25–70
- Website
- Trenitalia Eurocity
- 1st Class
- €45–70
- 2nd Class
- €25–35
- Phone
- +49 (0) 7531 915109
- [email protected]
- Website
- SBB GmbH
Train from Basel SBB to Bellinzona
- Ave. Duration
- 3h 5m
- Frequency
- Once daily
- Estimated price
- €18–23
- Schedules at
- SBB GmbH
- Phone
- +41 27 720 47 47
- [email protected]
- Website
- RegionalAlps
Train from Martigny to Brig
- Ave. Duration
- 1h 9m
- Frequency
- Hourly
- Estimated price
- €27–55
- Schedules at
- RegionalAlps
- 2nd Class Ticket
- €27–32
- 1st Class Ticket
- €45–55
- Phone
- +41 (0)91 756 04 00
- [email protected]
- Website
- FART
Train from Domodossola to Locarno FART
- Ave. Duration
- 1h 54m
- Frequency
- Hourly
- Estimated price
- €10–15
- Schedules at
- FART
- Phone
- +3 318 576 2228
- Website
- BlaBlaCar Bus
Bus from Porto - Terminal Intermodal de Campanhã to Saint-Étienne - Rue Milleret Bus Stop
- Ave. Duration
- 20h 29m
- Frequency
- Every 4 hours
- Estimated price
- €100–180
- Website
- BlaBlaCar Bus
Bus from Porto - Terminal Intermodal de Campanhã to Lyon - Gerland Bus Station
- Ave. Duration
- 21h 44m
- Frequency
- Every 3 hours
- Estimated price
- €110–180
- Website
- BlaBlaCar Bus
Bus from Lyon - Gerland Bus Station to Turin - Vittorio Emanuele Bus Station
- Ave. Duration
- 4h 15m
- Frequency
- Hourly
- Estimated price
- €20–35
- Website
- BlaBlaCar Bus
- [email protected]
- Website
- TERRAVISION
Bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoia
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- €5–23
- Website
- TERRAVISION
- Phone
- 035.319366
- [email protected]
- Website
- orioshuttle.com
Bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoia
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- €11–14
- Schedules at
- orioshuttle.com
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Lyon - Gerland Bus Station to Turin - Vittorio Emanuele Bus Station
- Ave. Duration
- 5h
- Frequency
- Hourly
- Estimated price
- €25–40
- Website
- Flixbus
Bus from Turin to Milan
- Ave. Duration
- 1h 50m
- Frequency
- Every 2 hours
- Estimated price
- €10–16
- Website
- Flixbus
Bus from Porto to Martigny
- Ave. Duration
- 30h 35m
- Frequency
- 6 times a week
- Estimated price
- €160–240
- Website
- Flixbus
- Phone
- +39 06 88 93 82 32
- Website
- Itabus S.p.A.
Bus from Turin to Milan
- Ave. Duration
- 2h
- Frequency
- Twice daily
- Estimated price
- €6–12
- Website
- Itabus S.p.A.
- Phone
- +39 0322 863117
- [email protected]
- Website
- https://www.safduemila.com/
Bus from Aeroporto Malpensa - Terminal 1 to Stresa - Imbarcadero
- Ave. Duration
- 1h 10m
- Frequency
- Every 4 hours
- Estimated price
- €18–20
- Website
- https://www.safduemila.com/
- Phone
- (+351) 258 454 303
- [email protected]
- Website
- barquense.pt
Bus from Porto - Hospital de São João to Chambéry - Rue Dr Vernier
- Ave. Duration
- 26h 26m
- Frequency
- Once a week
- Estimated price
- €75–95
- Schedules at
- barquense.pt
- Book at
- barquense.pt
Want to know more about travelling around Italy
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
5 delightfully under-the-radar French towns you need to visit
Read the travel guide
Booking & Getting There
Porto to Lake Maggiore bus services, operated by BlaBlaCar Bus, arrive at Lyon - Gerland Bus Station.
Lake Maggiore is 1h ahead of Porto. It is currently 12:24 PM in Porto and 1:24 PM in Lake Maggiore.
Porto to Lake Maggiore train services, operated by Renfe Viajeros, arrive at Redondela De Galicia station.
Yes, the driving distance between Porto to Lake Maggiore is 1867 km. It takes approximately 19h 42m to drive from Porto to Lake Maggiore.
There are 5762+ hotels available in Lake Maggiore.













































































