There are 6 ways to get from Porto to Geneva by plane, bus, train, car, or train (Renfe, Ouigo, TGV)
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly
best- Fly from Francisco De Sá Carneiro Airport (OPO) to Geneva International Airport (GVA)plane OPO - GVA
4h 37mCHF 42–242Bus, train
- Take the bus from Porto to Vigobus
- Take the train from Vigo Urzaiz to Madrid Chamartíntrain Ave
- Take the train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Santstrain Ave
- Take the train from Barcelona-Sants to Lyon Part Dieutrain
- Take the train from Lyon Part Dieu to Genevetrain Ter
20h 21mCHF 227–473Bus via Lyon
- Take the bus from Porto - Terminal Intermodal de Campanhã to Lyon - Gerland Bus Stationbus BlaBlaCar Bus
- Take the bus from Lyon to Genevabus FlixBus N1149 / ...
24h 56mCHF 131–213Drive 1,624.1 km
- Drive from Porto to Genevacar 1,624.1 km
16h 29mCHF 312–451Train
- Take the train from Porto Campanha to Entroncamentotrain Ic / ...
- Take the train from Entroncamento to Badajoztrain Re
- Take the train from Badajoz to Madrid-Puerta de Atocha-Almudena Grandestrain Alv
- Take the train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Santstrain Ave
- Take the train from Barcelona-Sants to Lyon Part Dieutrain
- Take the train from Lyon Part Dieu to Genevetrain Ter
23h 55mCHF 230–421Bus
- Take the bus from Porto to Genevabus FlixBus N1157
28h 30mCHF 140–220
Porto to Geneva by bus and train
Comparing Your Travel Options
The cheapest way to get from Porto to Geneva is to fly which costs SFr 40 - SFr 250 and takes 4h 37m.
The fastest way to get from Porto to Geneva is to fly which takes 4h 37m and costs SFr 40 - SFr 250.
Yes, there is a direct bus departing from Porto and arriving at Geneva. Services depart six times a week, and operate Tuesday, Thursday and Saturday. The journey takes approximately 28h 30m.
No, there is no direct train from Porto to Geneva. However, there are services departing from Porto Campanha and arriving at Geneve via Entroncamento, Badajoz, Madrid-Puerta de Atocha-Almudena Grandes, Barcelona-Sants and Lyon Part Dieu. The journey, including transfers, takes approximately 23h 55m.
The distance between Porto and Geneva is 1321 km. The road distance is 1624.1 km.
The best way to get from Porto to Geneva without a car is to bus and train which takes 20h 21m and costs SFr 220 - SFr 480.
It takes approximately 4h 37m to get from Porto to Geneva, including transfers.
Porto to Geneva bus services, operated by BlaBlaCar Bus, depart from Porto - Terminal Intermodal de Campanhã station.
Porto to Geneva train services, operated by Comboios de Portugal, depart from Porto Campanha station.
The best way to get from Porto to Geneva is to fly which takes 4h 37m and costs SFr 40 - SFr 250. Alternatively, you can bus via Lyon, which costs SFr 130 - SFr 220 and takes 24h 56m, you could also train, which costs SFr 230 - SFr 430 and takes 23h 55m.
What companies run services between Porto, Portugal and Geneva, Switzerland?
easyJet, TAP Portugal, and Swiss fly from Francisco De Sá Carneiro Airport (OPO) to Geneva International Airport (GVA) every 4 hours. Alternatively, you can take a bus from Porto - Terminal Intermodal de Campanhã to Geneva via Lyon in around 24h 56m.
- Website
- easyjet.com
Flights from Francisco De Sá Carneiro Airport to Geneva International Airport
- Ave. Duration
- 2h 14m
- When
- Every day
- Estimated price
- CHF 30–190
Flights from Francisco De Sá Carneiro Airport to Geneva International Airport via Bordeaux
- Ave. Duration
- 4h 45m
- When
- Monday, Wednesday, Thursday, and Sunday
- Estimated price
- CHF 30–190
Flights from Francisco De Sá Carneiro Airport to Geneva International Airport via Nantes
- Ave. Duration
- 5h 2m
- When
- Friday and Sunday
- Estimated price
- CHF 30–190
Flights from Francisco De Sá Carneiro Airport to Geneva International Airport via Nice
- Ave. Duration
- 5h 20m
- When
- Sunday
- Estimated price
- CHF 30–190
- Website
- flytap.com
Flights from Francisco De Sá Carneiro Airport to Geneva International Airport
- Ave. Duration
- 2h 15m
- When
- Every day
- Estimated price
- CHF 70–270
- Website
- swiss.com
Flights from Francisco De Sá Carneiro Airport to Geneva International Airport
- Ave. Duration
- 2h 15m
- When
- Every day
- Estimated price
- CHF 70–270
Rome2Rio's guide to Renfe AVE
Contact Details
- Phone
- +34 91 232 03 20
- Website
- Renfe AVE
Train from Vigo Urzaiz to Madrid Chamartín
- Ave. Duration
- 3h 55m
- Frequency
- 3 times a day
- Estimated price
- CHF 80–140
- Website
- Renfe AVE
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 2m
- Frequency
- Hourly
- Estimated price
- CHF 75–130
- Website
- Renfe AVE
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 2m
- Frequency
- Hourly
- Estimated price
- CHF 75–130
- Website
- Renfe AVE
Rome2Rio's guide to Renfe Viajeros
Contact Details
- Phone
- +34 91 232 03 20
- Website
- Renfe Viajeros
Train from Vigo Urzaiz to Madrid Chamartín
- Ave. Duration
- 4h 24m
- Frequency
- Once daily
- Estimated price
- CHF 70–110
- Website
- Renfe Viajeros
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 29m
- Frequency
- Twice daily
- Estimated price
- CHF 65–100
- Website
- Renfe Viajeros
Train from Barcelona-Sants to Lyon Part Dieu
- Ave. Duration
- 5h 6m
- Frequency
- Once daily
- Estimated price
- CHF 75–110
- Website
- Renfe Viajeros
Train from Badajoz to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 4h 30m
- Frequency
- 3 times a day
- Estimated price
- CHF 50–75
- Website
- Renfe Viajeros
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 29m
- Frequency
- Twice daily
- Estimated price
- CHF 65–100
- Website
- Renfe Viajeros
Train from Barcelona-Sants to Lyon Part Dieu
- Ave. Duration
- 5h 6m
- Frequency
- Once daily
- Estimated price
- CHF 75–110
- Website
- Renfe Viajeros
- Phone
- +34 900 926 851
- atencion.cliente@iryo.eu
- Website
- Iryo
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 24m
- Frequency
- Hourly
- Estimated price
- CHF 50–90
- Website
- Iryo
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 24m
- Frequency
- Hourly
- Estimated price
- CHF 50–90
- Website
- Iryo
- Phone
- +34 900 759 781
- Website
- Ouigo
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 23m
- Frequency
- Every 4 hours
- Estimated price
- CHF 40–65
- Website
- Ouigo
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 23m
- Frequency
- Every 4 hours
- Estimated price
- CHF 40–65
- Website
- Ouigo
- Phone
- +33 1 84 94 36 35
- Website
- Oui.SNCF
Train from Lyon Part Dieu to Geneve
- Ave. Duration
- 2h 2m
- Frequency
- Every 3 hours
- Estimated price
- CHF 28–45
- Website
- Oui.SNCF
Train from Lyon Part Dieu to Geneve
- Ave. Duration
- 2h 2m
- Frequency
- Every 3 hours
- Estimated price
- CHF 28–45
- Website
- Oui.SNCF
- Phone
- +33 1 84 94 36 35
- Website
- TGV inOui
Train from Lyon Part Dieu to Geneve
- Ave. Duration
- 1h 50m
- Frequency
- 5 times a week
- Estimated price
- CHF 30–45
- Website
- TGV inOui
Train from Lyon Part Dieu to Geneve
- Ave. Duration
- 1h 50m
- Frequency
- 5 times a week
- Estimated price
- CHF 30–45
- Website
- TGV inOui
- Phone
- +351 210 900 032
- Website
- Comboios de Portugal
Train from Porto Campanha to Entroncamento
- Ave. Duration
- 2h 13m
- Frequency
- Every 3 hours
- Estimated price
- CHF 21–35
- Website
- Comboios de Portugal
Train from Entroncamento to Badajoz
- Ave. Duration
- 2h 48m
- Frequency
- Twice daily
- Estimated price
- CHF 16–27
- Website
- Comboios de Portugal
Rome2Rio's guide to FlixBus
Contact Details
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- Flixbus
Bus from Porto to Vigo
- Ave. Duration
- 2h 10m
- Frequency
- Every 4 hours
- Estimated price
- CHF 13–20
- Website
- Flixbus
Bus from Lyon to Geneva
- Ave. Duration
- 2h 30m
- Frequency
- Every 2 hours
- Estimated price
- CHF 12–19
- Website
- Flixbus
Bus from Porto to Geneva
- Ave. Duration
- 28h 30m
- Frequency
- 6 times a week
- Estimated price
- CHF 140–220
- Website
- Flixbus
- Phone
- +34 (0) 986 288 030
- autna@autna.com
- Website
- Autna S.L.
Bus from Porto to Vigo
- Ave. Duration
- 2h 35m
- Frequency
- 3 times a day
- Estimated price
- CHF 19–50
- Website
- Autna S.L.
- Phone
- +3 318 576 2228
- 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
- CHF 120–200
- Website
- BlaBlaCar Bus
Bus from Lyon to Geneva
- Ave. Duration
- 3h 15m
- Frequency
- 5 times a day
- Estimated price
- CHF 11–19
- Website
- BlaBlaCar Bus
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
5 delightfully under-the-radar French towns you need to visit
Read the travel guide
Want to know more about Flixbus?
Read the travel guide
Train travel in Spain: A guide to Renfe
Read the travel guide
Booking & Getting There
Porto to Geneva bus services, operated by BlaBlaCar Bus, arrive at Lyon - Gerland Bus Station.
Geneva is 1h ahead of Porto. It is currently 3:27 AM in Porto and 4:27 AM in Geneva.
Porto to Geneva train services, operated by Comboios de Portugal, arrive at Entroncamento station.
Yes, the driving distance between Porto to Geneva is 1624 km. It takes approximately 16h 29m to drive from Porto to Geneva.
Book your Porto to Geneva train tickets online with Omio.
Book your Porto to Geneva bus tickets online with Omio and 12go.asia.
There are 1212+ hotels available in Geneva.







































