There are 11 ways to get from Porto to Lake Maggiore 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 Varesetrain
7h 7m€58–257Bus, 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€223–362Train
- 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 35m€347–538Drive 1,867.4 km
- Drive from Porto to Stresacar 1,867.4 km
19h 43m€338–488Fly 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 29m€59–295Fly 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 44m€105–245Fly 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
8h€82–335Fly 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 18m€91–432Bus
- Take the bus from Porto - Terminal Intermodal de Campanhã to Lyon - Gerland Bus Stationbus
- Take the bus from Lyon - Gerland Bus Station to Milano, Autostazione Lampugnanobus
- Take the bus from Saronno to Laveno Mombello Lagobus
32h 4mBus, 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 28m€215–331Bus, 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 20m€236–349
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 €55 - €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 €55 - €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 Laveno Mombello Lago via Lyon - Gerland Bus Station, Milano, Autostazione Lampugnano and Saronno. The journey, including transfers, takes approximately 32h 4m.
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 35m.
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 €220 - €370.
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 35m and costs €340 - €550. Alternatively, you can bus, which costs and takes 32h 4m.
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 35m. Alternatively, you can take a bus from Porto - Terminal Intermodal de Campanhã to Laveno Mombello Lago via Lyon - Gerland Bus Station, Milano, Autostazione Lampugnano, and Saronno in around 32h 4m.
- Website
- ryanair.com
Flights from Francisco De Sá Carneiro Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 30m
- When
- Every day
- Estimated price
- €55–170
Flights from Francisco De Sá Carneiro Airport to Il Caravaggio International Airport
- Ave. Duration
- 2h 35m
- When
- Every day
- Estimated price
- €45–240
Flights from Francisco De Sá Carneiro Airport to Il Caravaggio International Airport via Barcelona
- Ave. Duration
- 4h 35m
- When
- Friday
- Estimated price
- €45–240
Flights from Francisco De Sá Carneiro Airport to Il Caravaggio International Airport via Toulouse
- Ave. Duration
- 4h 25m
- When
- Monday
- Estimated price
- €45–240
- 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
- €50–230
Flights from Francisco De Sá Carneiro Airport to Milan Linate Airport
- Ave. Duration
- 2h 30m
- When
- Monday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €40–220
Flights from Francisco De Sá Carneiro Airport to Zurich Airport
- Ave. Duration
- 2h 37m
- When
- Monday, Friday, Sunday, and Thursday
- Estimated price
- €45–130
Flights from Francisco De Sá Carneiro Airport to Basel
- Ave. Duration
- 2h 30m
- When
- Every day
- Estimated price
- €55–240
Flights from Francisco De Sá Carneiro Airport to Basel via Bordeaux
- Ave. Duration
- 4h 25m
- When
- Monday and Friday
- Estimated price
- €55–240
- Website
- swiss.com
Flights from Francisco De Sá Carneiro Airport to Zurich Airport
- Ave. Duration
- 2h 30m
- When
- Every day
- Estimated price
- €55–140
Flights from Francisco De Sá Carneiro Airport to Zurich Airport via Geneva
- Ave. Duration
- 4h 42m
- When
- Thursday, Monday, Wednesday, Friday, Saturday, and Sunday
- Estimated price
- €55–140
- Website
- iberia.com
Flights from Francisco De Sá Carneiro Airport to Milan Linate Airport via Madrid
- Ave. Duration
- 5h
- When
- Every day
- Estimated price
- €85–330
- Website
- flytap.com
Flights from Francisco De Sá Carneiro Airport to Zurich Airport
- Ave. Duration
- 2h 30m
- When
- Every day
- Estimated price
- €55–140
- Website
- comlux.com
Flights from Francisco De Sá Carneiro Airport to Zurich Airport
- Ave. Duration
- 2h 30m
- When
- Wednesday, Friday, and Saturday
- Estimated price
- €70–260
Flights from Francisco De Sá Carneiro Airport to Basel
- Ave. Duration
- 2h 30m
- When
- Saturday
- Estimated price
- €120–290
- Website
- flyulendo.com
Flights from Francisco De Sá Carneiro Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 30m
- When
- Monday, Thursday, Friday, and Sunday
- Estimated price
- €40–140
- 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
- €13–21
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Milano Centrale to Locarno
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- €35–60
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Milano Centrale to Locarno
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- €35–60
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Zürich HB to Bellinzona
- Ave. Duration
- 1h 39m
- Frequency
- Hourly
- Estimated price
- €50–80
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Basel SBB to Bellinzona
- Ave. Duration
- 2h 38m
- Frequency
- Every 3 hours
- Estimated price
- €75–120
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Martigny to Brig
- Ave. Duration
- 57 min
- Frequency
- Every 30 minutes
- Estimated price
- €26–40
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Genève to Locarno
- Ave. Duration
- 5h 3m
- Frequency
- Once a week
- Estimated price
- €140–220
- 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
- €11–18
- Website
- Oui.SNCF
Train from Chambery Challes Les Eaux to Geneve
- Ave. Duration
- 1h 28m
- Frequency
- Every 2 hours
- Estimated price
- €19–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
- €12–18
- 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–29
- Website
- Renfe Viajeros
Train from Pontevedra to Barcelona-Sants
- Ave. Duration
- 13h 42m
- Frequency
- Twice daily
- Estimated price
- €160–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–75
- 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
- 1h
- 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
- 4 times a day
- Estimated price
- €120–210
- Website
- BlaBlaCar Bus
Bus from Porto - Terminal Intermodal de Campanhã to Lyon - Gerland Bus Station
- Ave. Duration
- 21h 44m
- Frequency
- 5 times a day
- Estimated price
- €130–220
- Website
- BlaBlaCar Bus
Bus from Lyon - Gerland Bus Station to Milano, Autostazione Lampugnano
- Ave. Duration
- 6h 11m
- Frequency
- Hourly
- Estimated price
- €35–60
- 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 Milano, Autostazione Lampugnano
- Ave. Duration
- 7h 5m
- Frequency
- Every 2 hours
- Estimated price
- €35–60
- Website
- Flixbus
Bus from Porto to Martigny
- Ave. Duration
- 30h 35m
- Frequency
- 6 times a week
- Estimated price
- €170–260
- Website
- Flixbus
- Phone
- +39 06 88 93 82 32
- Website
- Itabus S.p.A.
Bus from Lyon - Gerland Bus Station to Milano, Autostazione Lampugnano
- Ave. Duration
- 6h 50m
- Frequency
- 4 times a day
- Estimated price
- €22–40
- Website
- Itabus S.p.A.
- Phone
- +39 02 7249 4494
- [email protected]
- Website
- Trenord
Bus from Saronno to Laveno Mombello Lago
- Ave. Duration
- 1h 24m
- Frequency
- 6 times a week
- Website
- Trenord
- 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 4:10 AM in Porto and 5:10 AM 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 43m to drive from Porto to Lake Maggiore.
Book your Porto to Lake Maggiore train tickets online with Omio.
There are 5415+ hotels available in Lake Maggiore.














































































