There are 8 ways to get from Zurich to Porto by plane, train (TGV, Renfe), bus, car, or train
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly from Zurich Airport
best- Fly from Zurich Airport (ZRH) to Francisco De Sá Carneiro Airport (OPO)plane ZRH - OPO
5h 28m€54–161Train
- Take the train from Zürich HB to Mulhousetrain Tgv
- Take the train from Mulhouse Ville to Lyon Part Dieutrain Tgv
- Take the train from Lyon Part Dieu to Barcelona-Santstrain
- Take the train from Barcelona-Sants to Porrinotrain Alv
- Take the train from Porrino to Porto Campanhatrain Ic
28h 33m€249–404Bus
- Take the bus from Zurich Bus Station to Bernbus 106
- Take the bus from Bern to Viseubus
- Take the bus from Estação Rodoviária de Viseu to Porto - Terminal Intermodal de Campanhãbus
30h 56m€111–170Drive 1,867.5 km
- Drive from Zurich to Portocar 1,867.5 km
19h 14m€319–461Train to Basel, fly
- Take the train from Zürich HB to Basel SBBtrain
- Fly from Basel (BSL) to Francisco De Sá Carneiro Airport (OPO)plane BSL - OPO
6h 32m€59–250Train to Geneva International Airport, fly
- Take the train from Zürich HB to Genève-Aéroporttrain
- Fly from Geneva International Airport (GVA) to Francisco De Sá Carneiro Airport (OPO)plane GVA - OPO
8h 16m€95–296Bus via Lyon
- Take the bus from Zurich Central Bus Station Sihlquai to Lyon Perrache Bus Stationbus RegioJet 95
- Take the bus from Lyon, Perrache Bus Station to Porto - Hospital de São Joãobus Linha Lyon Express
32h 9m€89–117Train, bus
- Take the train from Zürich HB to Lausannetrain Ic5 / ...
- Take the bus from Lausanne to Portobus FlixBus N1157
32h 15m€103–228
Zurich to Porto by train
Questions & Answers
The cheapest way to get from Zurich to Porto is to fly which costs €50 - €170 and takes 5h 28m.
The fastest way to get from Zurich to Porto is to fly which takes 5h 28m and costs €50 - €170.
No, there is no direct bus from Zurich station to Porto. However, there are services departing from Zurich Bus Station and arriving at Porto - Terminal Intermodal de Campanhã via Bern and Estação Rodoviária de Viseu. The journey, including transfers, takes approximately 30h 56m.
No, there is no direct train from Zurich to Porto. However, there are services departing from Zürich HB and arriving at Porto Campanha via Mulhouse Ville, Lyon Part Dieu, Barcelona-Sants and Porrino. The journey, including transfers, takes approximately 28h 33m.
The distance between Zurich and Porto is 1555 km. The road distance is 1867.5 km.
The best way to get from Zurich to Porto without a car is to train which takes 28h 33m and costs €240 - €410.
It takes approximately 5h 28m to get from Zurich to Porto, including transfers.
Zurich to Porto bus services, operated by FlixBus, depart from Zurich Bus Station.
Zurich to Porto train services, operated by Swiss Federal Railways (SBB CFF FFS), depart from Zürich HB station.
The best way to get from Zurich to Porto is to fly which takes 5h 28m and costs €50 - €170. Alternatively, you can train, which costs €240 - €410 and takes 28h 33m, you could also bus, which costs €110 - €170 and takes 30h 56m.
What companies run services between Zurich, Switzerland and Porto, Portugal?
easyJet, Swiss, and three other airlines fly from Zurich Airport (ZRH) to Francisco De Sá Carneiro Airport (OPO) 4 times a day. Alternatively, you can take a train from Zürich HB to Porto Campanha via Mulhouse, Mulhouse Ville, Lyon Part Dieu, Barcelona-Sants, and Porrino in around 28h 33m.
- Website
- easyjet.com
Flights from Zurich Airport to Francisco De Sá Carneiro Airport
- Ave. Duration
- 2h 42m
- When
- Monday, Thursday, Friday, and Sunday
- Estimated price
- €40–120
Flights from Basel to Francisco De Sá Carneiro Airport
- Ave. Duration
- 2h 41m
- When
- Every day
- Estimated price
- €40–210
Flights from Basel to Francisco De Sá Carneiro Airport via Bordeaux
- Ave. Duration
- 6h 5m
- When
- Monday
- Estimated price
- €40–210
Flights from Geneva International Airport to Francisco De Sá Carneiro Airport
- Ave. Duration
- 2h 24m
- When
- Every day
- Estimated price
- €30–170
Flights from Geneva International Airport to Francisco De Sá Carneiro Airport via Nantes
- Ave. Duration
- 4h 20m
- When
- Monday
- Estimated price
- €30–170
Flights from Geneva International Airport to Francisco De Sá Carneiro Airport via Bordeaux
- Ave. Duration
- 5h 10m
- When
- Monday, Thursday, and Sunday
- Estimated price
- €30–170
- Website
- swiss.com
Flights from Zurich Airport to Francisco De Sá Carneiro Airport
- Ave. Duration
- 2h 43m
- When
- Every day
- Estimated price
- €55–130
Flights from Zurich Airport to Francisco De Sá Carneiro Airport via Geneva International Airport
- Ave. Duration
- 5h 30m
- When
- Tuesday, Wednesday, Thursday, Saturday, and Sunday
- Estimated price
- €60–130
Flights from Geneva International Airport to Francisco De Sá Carneiro Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €60–230
- Website
- flytap.com
Flights from Zurich Airport to Francisco De Sá Carneiro Airport
- Ave. Duration
- 2h 43m
- When
- Every day
- Estimated price
- €55–130
Flights from Geneva International Airport to Francisco De Sá Carneiro Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €60–230
- Website
- comlux.com
Flights from Zurich Airport to Francisco De Sá Carneiro Airport
- Ave. Duration
- 2h 40m
- When
- Wednesday
- Estimated price
- €65–400
- Website
- flexflight.dk
Flights from Zurich Airport to Francisco De Sá Carneiro Airport
- Ave. Duration
- 2h 40m
- When
- Wednesday
- Estimated price
- €65–400
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Zürich HB to Mulhouse
- Ave. Duration
- 1h 19m
- Frequency
- Every 4 hours
- Estimated price
- €45–85
- Website
- https://www.sbb.ch/en
Train from Zürich HB to Genève-Aéroport
- Ave. Duration
- 3h 5m
- Frequency
- Hourly
- Estimated price
- €55–110
- Website
- https://www.sbb.ch/en
Train from Zürich HB to Lausanne
- Ave. Duration
- 2h 22m
- Frequency
- Hourly
- Estimated price
- €45–85
- Website
- https://www.sbb.ch/en
- Phone
- +33 1 84 94 36 35
- Website
- sncf-connect.com
Train from Mulhouse Ville to Lyon Part Dieu
- Ave. Duration
- 3h 3m
- Frequency
- 5 times a day
- Estimated price
- €40–90
- Website
- https://www.sncf-connect.com/en-en
Rome2Rio's guide to Renfe Viajeros
Contact Details
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Lyon Part Dieu to Barcelona-Sants
- Ave. Duration
- 4h 48m
- Frequency
- Once daily
- Estimated price
- €50–75
- Website
- https://www.renfe.com/es/en
Train from Barcelona-Sants to Porrino
- Ave. Duration
- 13h 20m
- Frequency
- 3 times a week
- Estimated price
- €100–140
- Website
- https://www.renfe.com/es/en
Train from Porrino to Porto Campanha
- Ave. Duration
- 2h 3m
- Frequency
- Twice daily
- Estimated price
- €13–18
- Website
- https://www.renfe.com/es/en
- Phone
- +49 (0) 7531 915109
- info@sbb-deutschland.de
- Website
- sbb-deutschland.de
Train from Zürich HB to Basel SBB
- Ave. Duration
- 53 min
- Frequency
- Every 2 hours
- Estimated price
- €8–11
- Schedules at
- sbb-deutschland.de
- Phone
- +49 30 311 682904
- Website
- bahn.de
Train from Zürich HB to Basel SBB
- Ave. Duration
- 53 min
- Frequency
- 3 times a day
- Estimated price
- €28–32
- Website
- https://int.bahn.de/en
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Zurich Bus Station to Bern
- Ave. Duration
- 1h 35m
- Frequency
- Every 4 hours
- Estimated price
- €11–17
- Website
- https://www.flixbus.co.uk
Bus from Lausanne to Porto
- Ave. Duration
- 28h 30m
- Frequency
- 6 times a week
- Estimated price
- €50–140
- Website
- https://www.flixbus.co.uk
- Website
- global.flixbus.com
Bus from Zurich Bus Station to Bern
- Ave. Duration
- 1h 45m
- Frequency
- 4 times a day
- Schedules at
- global.flixbus.com
- Phone
- +420 222 222 221
- info@regiojet.cz
- Website
- regiojet.com
Bus from Zurich Bus Station to Bern
- Ave. Duration
- 1h 45m
- Frequency
- Once a week
- Estimated price
- €7–11
- Website
- https://regiojet.com/
Bus from Zurich Central Bus Station Sihlquai to Lyon Perrache Bus Station
- Ave. Duration
- 6h 15m
- Frequency
- Once a week
- Estimated price
- €17–20
- Website
- https://regiojet.com/
- 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–14
- Website
- https://rede-expressos.pt/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
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
5 delightfully under-the-radar French towns you need to visit
Read the travel guide
Train travel in Spain: A guide to Renfe
Read the travel guide
More Questions & Answers
Zurich to Porto bus services, operated by FlixBus, arrive at Bern station.
Porto is 1h behind Zurich. It is currently 8:07 PM in Zurich and 7:07 PM in Porto.
Zurich to Porto train services, operated by Swiss Federal Railways (SBB CFF FFS), arrive at Mulhouse station.
Yes, the driving distance between Zurich to Porto is 1868 km. It takes approximately 19h 14m to drive from Zurich to Porto.
There are 6244+ hotels available in Porto.










































