There are 9 ways to get from Porto to Zagreb by plane, bus, car, shuttle, towncar, 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 to Zagreb Franjo Tuđman Airport
best- Fly from Francisco De Sá Carneiro Airport (OPO) to Zagreb Franjo Tuđman Airport (ZAG)plane OPO - ZAG
8h 21m€83–264Bus
- Take the bus from Porto to Marseillebus FlixBus N1137
- Take the bus from Marseille, Gare de Marseille-Saint-Charles to Zagrebbus N482
41h 40m€240–365Drive 2,471 km
- Drive from Porto to Zagrebcar 2,471 km
25h 39m€398–575Fly to Ljubljana, shuttle
- Fly from Francisco De Sá Carneiro Airport (OPO) to Ljubljana (LJU)plane OPO - LJU
- Take a shuttle bus from Zgornji Brnik, Letališče Jožeta Pučnika Ljubljana to Zagreb
9h 33m€130–682Fly to Graz Airport, shuttle
- Fly from Francisco De Sá Carneiro Airport (OPO) to Graz Airport (GRZ)plane OPO - GRZ
- Take a shuttle bus from Graz Airport to Zagreb
10h 36m€432–782Fly to Rijeka Airport, shuttle
- Fly from Francisco De Sá Carneiro Airport (OPO) to Rijeka Airport (RJK)plane OPO - RJK
- Take a shuttle bus from Rijeka Airport to Zagreb
10h 42m€322–782Bus via Lyon
- Take the bus from Porto - Hospital de São João to Lyon, Perrache Bus Stationbus Linha Lyon Express
- Take the bus from Lyon, Perrache Bus Station to Breganabus
45h 6m€185–208Towncar, bus
- Take a town car from Porto - Aeroporto Francisco Sá Carneiro to Lugotowncar
- Take the bus from Lugo to Padovabus
- Take the bus from Padova to Novo Mesto, Avtobusna postajabus
- Take the bus from Novo Mesto, Avtobusna postaja to Zagreb, Autobusni Kolodvorbus
45h 53m€589–1,342Train, bus
- Take the train from Porto Sao Bento to Penafieltrain 871 / ...
- Take the bus from Penafiel to Kaiserslautern central train stationbus
- Take the train from Kaiserslautern, Hbf to Koblenz Hauptbahnhoftrain
- Take the train from Koblenz Hauptbahnhof to Villach Hauptbahnhoftrain Drf
- Take the train from Villach Hbf to Zagreb Glavni Kol.train 319
2d 5h€298–517
Porto to Zagreb by bus
Comparing Your Travel Options
The cheapest way to get from Porto to Zagreb is to fly which costs €80 - €270 and takes 8h 21m.
The fastest way to get from Porto to Zagreb is to fly which takes 8h 21m and costs €80 - €270.
No, there is no direct bus from Porto to Zagreb. However, there are services departing from Porto and arriving at Zagreb via Marseille, Gare de Marseille-Saint-Charles. The journey, including transfers, takes approximately 41h 40m.
The distance between Porto and Zagreb is 2076 km. The road distance is 2471 km.
The best way to get from Porto to Zagreb without a car is to bus which takes 41h 40m and costs €240 - €370.
It takes approximately 8h 21m to get from Porto to Zagreb, including transfers.
Porto to Zagreb bus services, operated by FlixBus, depart from Porto station.
The best way to get from Porto to Zagreb is to fly which takes 8h 21m and costs €80 - €270. Alternatively, you can bus, which costs €240 - €370 and takes 41h 40m.
Porto to Zagreb bus services, operated by FlixBus, arrive at Marseille station.
Zagreb is 1h ahead of Porto. It is currently 6:27 AM in Porto and 7:27 AM in Zagreb.
What companies run services between Porto, Portugal and Zagreb, Croatia?
Lufthansa, Air Dolomiti, and four other airlines fly from Francisco De Sá Carneiro Airport (OPO) to Zagreb Franjo Tuđman Airport (ZAG) 4 times a day. Alternatively, you can take a bus from Porto to Zagreb via Marseille, Gare de Marseille-Saint-Charles in around 41h 40m.
- Website
- lufthansa.com
Flights from Francisco De Sá Carneiro Airport to Zagreb Franjo Tuđman Airport via Munich
- Ave. Duration
- 6h 30m
- When
- Every day
- Estimated price
- €100–370
Flights from Francisco De Sá Carneiro Airport to Zagreb Franjo Tuđman Airport via Split
- Ave. Duration
- 5h 50m
- When
- Monday
- Estimated price
- €65–270
Flights from Francisco De Sá Carneiro Airport to Ljubljana via Frankfurt
- Ave. Duration
- 7h 50m
- When
- Every day
- Estimated price
- €130–450
Flights from Francisco De Sá Carneiro Airport to Graz Airport via Frankfurt
- Ave. Duration
- 6h 36m
- When
- Every day
- Estimated price
- €130–260
Flights from Francisco De Sá Carneiro Airport to Graz Airport via Munich
- Ave. Duration
- 7h 21m
- When
- Every day
- Estimated price
- €130–260
Flights from Francisco De Sá Carneiro Airport to Rijeka Airport via Munich
- Ave. Duration
- 8h 50m
- When
- Sunday
- Estimated price
- €160–550
- Website
- swiss.com
Flights from Francisco De Sá Carneiro Airport to Zagreb Franjo Tuđman Airport via Zurich
- Ave. Duration
- 7h 5m
- When
- Every day
- Estimated price
- €65–320
Flights from Francisco De Sá Carneiro Airport to Ljubljana via Zurich
- Ave. Duration
- 7h 8m
- When
- Every day
- Estimated price
- €95–390
Flights from Francisco De Sá Carneiro Airport to Rijeka Airport via Zurich
- Ave. Duration
- 6h 35m
- When
- Monday
- Estimated price
- €90–380
- Website
- croatiaairlines.com
Flights from Francisco De Sá Carneiro Airport to Zagreb Franjo Tuđman Airport via Barcelona
- Ave. Duration
- 5h
- When
- Sunday
- Estimated price
- €100–470
Flights from Francisco De Sá Carneiro Airport to Zagreb Franjo Tuđman Airport via Zurich
- Ave. Duration
- 6h 35m
- When
- Monday, Friday, Saturday, Sunday, and Thursday
- Estimated price
- €65–260
Flights from Francisco De Sá Carneiro Airport to Zagreb Franjo Tuđman Airport via Split
- Ave. Duration
- 5h 50m
- When
- Monday
- Estimated price
- €65–270
Flights from Francisco De Sá Carneiro Airport to Rijeka Airport via Zurich
- Ave. Duration
- 6h 35m
- When
- Monday
- Estimated price
- €90–380
- Website
- iberia.com
Flights from Francisco De Sá Carneiro Airport to Ljubljana via Madrid
- Ave. Duration
- 6h 35m
- When
- Saturday
- Estimated price
- €85–360
Flights from Francisco De Sá Carneiro Airport to Ljubljana via Barcelona
- Ave. Duration
- 7h 20m
- When
- Thursday and Sunday
- Estimated price
- €85–320
- Website
- ryanair.com
Flights from Francisco De Sá Carneiro Airport to Rijeka Airport via Hahn
- Ave. Duration
- 5h 15m
- When
- Friday
- Estimated price
- €100–360
Flights from Francisco De Sá Carneiro Airport to Rijeka Airport via London Stansted
- Ave. Duration
- 8h 45m
- When
- Tuesday
- Estimated price
- €110–370
- Website
- transavia.com
Flights from Francisco De Sá Carneiro Airport to Ljubljana via Paris Orly
- Ave. Duration
- 6h 30m
- When
- Thursday and Saturday
- Estimated price
- €100–480
- Website
- vueling.com
Flights from Francisco De Sá Carneiro Airport to Ljubljana via Barcelona
- Ave. Duration
- 7h 20m
- When
- Thursday and Sunday
- Estimated price
- €85–320
- Phone
- +351 210 900 032
- Website
- Comboios de Portugal
Train from Porto Sao Bento to Penafiel
- Ave. Duration
- 39 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–7
- Website
- Comboios de Portugal
- Phone
- +49 6731 999 27-27
- [email protected]
- Website
- vlexx
Train from Kaiserslautern, Hbf to Koblenz Hauptbahnhof
- Ave. Duration
- 1h 49m
- Frequency
- 5 times a day
- Estimated price
- €24–35
- Schedules at
- vlexx
- Phone
- +43 (0) 51717
- Website
- Nightjet
Train from Koblenz Hauptbahnhof to Villach Hauptbahnhof
- Ave. Duration
- 11h 34m
- Frequency
- Once a week
- Estimated price
- €45–130
- Website
- Nightjet
- Sleeper Carriage
- €100–130
- Couchette Carriage
- €75–90
- Seating Carriage
- €45–60
- Phone
- _AUSTRIAN_RAILWAYS_(ÖBB)
- Website
- Austrian Railways
Train from Villach Hbf to Zagreb Glavni Kol.
- Ave. Duration
- 4h 22m
- Frequency
- Once daily
- Estimated price
- €45–75
- Website
- Austrian Railways
Rome2Rio's guide to FlixBus
Contact DetailsContact Details
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Porto to Marseille
- Ave. Duration
- 22h
- Frequency
- 5 times a week
- Estimated price
- €140–210
- Website
- Flixbus
Bus from Marseille, Gare de Marseille-Saint-Charles to Zagreb
- Ave. Duration
- 18h 40m
- Frequency
- Once daily
- Estimated price
- €100–160
- Website
- Flixbus
Bus from Penafiel to Kaiserslautern central train station
- Ave. Duration
- 31h 25m
- Frequency
- 3 times a week
- Estimated price
- €180–270
- Website
- Flixbus
- Phone
- +386 1 320 4530
- [email protected]
- Website
- GoOpti
Shuttle from Zgornji Brnik, Letališče Jožeta Pučnika Ljubljana to Zagreb
- Ave. Duration
- 2h 6m
- Frequency
- On demand
- Estimated price
- €28–350
- Website
- GoOpti
- Shared
- €28–75
- Private
- €140–180
Shuttle from Graz Airport to Zagreb
- Ave. Duration
- 2h 49m
- Frequency
- On demand
- Estimated price
- €250–410
- Website
- GoOpti
- Private
- €278
Shuttle from Rijeka Airport to Zagreb
- Ave. Duration
- 2h 30m
- Frequency
- On demand
- Estimated price
- €210–350
- Website
- GoOpti
Bus from Padova to Novo Mesto, Avtobusna postaja
- Ave. Duration
- 4h 45m
- Frequency
- On demand
- Estimated price
- €78–650
- Website
- GoOpti
- Shared
- €78
- Private
- €463
Bus from Novo Mesto, Avtobusna postaja to Zagreb, Autobusni Kolodvor
- Ave. Duration
- 1h 18m
- Frequency
- On demand
- Estimated price
- €22–170
- Website
- GoOpti
- Shared
- €22
- Private
- €92
- Phone
- (+351) 258 454 303
- [email protected]
- Website
- barquense.pt
Bus from Porto - Hospital de São João to Lyon, Perrache Bus Station
- Ave. Duration
- 24h 38m
- Frequency
- Once a week
- Estimated price
- €70–90
- Schedules at
- barquense.pt
- Book at
- barquense.pt
- Phone
- 011 761-4693
- [email protected]
- Website
- BS Tours
Bus from Lyon, Perrache Bus Station to Bregana
- Ave. Duration
- 17h
- Frequency
- Once a week
- Website
- BS Tours
- Phone
- +4-0263-21.55.00
- Website
- tabitatour.ro
Bus from Lugo to Padova
- Ave. Duration
- 32h 22m
- Frequency
- Twice a week
- Estimated price
- €130–160
- Schedules at
- tabitatour.ro
- Phone
- (+351) 220 971 653
- [email protected]
- Website
- VM Transfers
Towncar from Porto - Aeroporto Francisco Sá Carneiro to Lugo
- Ave. Duration
- 4h 26m
- Frequency
- On demand
- Estimated price
- €360
- Website
- VM Transfers
Want to know more about travelling around Croatia
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
Italy Travel Guides
Read the travel guide
Booking & Getting There
Yes, the driving distance between Porto to Zagreb is 2471 km. It takes approximately 25h 39m to drive from Porto to Zagreb.
Book your Porto to Zagreb bus tickets online with Omio and FlixBus.
There are 2856+ hotels available in Zagreb.



































