The first ticket of a trip is the one from the airport to the centre, and it is often the one people get wrong. You buy it in a hurry, tired, at a machine in another language, and the gap between city transport and the express train can be large: in Stockholm the commuter train costs an SL ticket plus a SEK 157 station fee, the Arlanda Express SEK 340.
All 100 cities in our dossiers are here. For each one the table gives the airport and its distance, the cheapest and the fastest way with price and time, and the thing to watch out for. Every row was checked between 9 and 21 October 2026 against the airport's page, the operator's page or the official timetable, and the Source column takes you there.
The table: 100 cities, A to Z
The distance is the one the airport or the operator states; where they do not state one, it is the straight line from the airport to the main square. When the cheapest way is also the fastest, or when the sources give only one link, the column says "Same": that is the case in 70 cities out of 100. About twenty cities have no airport of their own, and the row starts from the reference airport. In 24 rows the price of the cheapest way is not published on a page that can be read, as for Belgian trains from Brussels Airport, ALSA buses in Granada and Nerja or KTEL buses in Chania: the cell says so instead of quoting a figure taken from elsewhere. The city name takes you to the dossier with all the notes on getting around.
| City | Airport (code, distance) | Cheapest way: price, time | Fastest way: price, time | What to watch out for | Source |
|---|---|---|---|---|---|
| Alberobello | None: Bari (BRI, about 56 km as the crow flies) | Ferrotramviaria train to Bari Centrale, €5.30, about 30 min, then Ferrovie del Sud Est, €6.30, about 1 h 50 min | Same | The two tickets are bought separately, the airport one includes a €4 surcharge, and some FSE services need a change and take up to three hours; the airport's fixed taxi fares only cover Bari | ferrotramviaria.it · ferrotramviaria.it · bari.airports.aeroportidipuglia.it · lefrecce.it |
| Alghero | Alghero-Fertilia (AHO), about 10 km from the centre according to the airport | ARST urban bus line 3, €1, about 25 min, roughly hourly (more frequent in summer) | Same | The bus stops are about 150 metres from the arrivals exit; otherwise there is the taxi | app.arstspa.it · aeroportodialghero.it |
| Hamburg | Hamburg Helmut Schmidt (HAM), about 9.5 km from Rathausmarkt as the crow flies | S1 S-Bahn, €4.10 (Hamburg AB), 7% off in the app, about 25 min, every 10 min | Same | The station is directly in Terminal 2, reached from the arrivals of both terminals; on Hamburg buses you cannot pay cash, you need the hvv prepaid card or the app | hvv.de · hamburg-airport.de |
| Amsterdam | Amsterdam Schiphol (AMS), about 11.5 km from Dam Square as the crow flies | NS train to Amsterdam Centraal, 14-17 min, eight an hour, contactless at the yellow readers | Same | A disposable single ticket costs €1.60 on top of the fare, and anyone staying in the city can take the Amsterdam Travel Ticket (€20 for a day), which also covers bus 397 to the airport | schiphol.nl · ns.nl |
| Antwerp | None: Brussels Airport (BRU, about 36 km from the Grote Markt as the crow flies) | SNCB train, about 30 min | Same | A €6.90 airport supplement is added to the fare, usually already included, and the total price only shows in the SNCB journey planner | belgiantrain.be · brusselsairport.be |
| Athens | Athens Eleftherios Venizelos (ATH), about 20 km from Syntagma as the crow flies | X95 express bus, €5.50, about 60 min depending on traffic, 24 hours a day | Metro line 3, €9, €16 return, one train every 36 min | The 24-hour and 5-day tickets do not cover the airport, while the 3-day tourist ticket (€20) includes one trip each way; with a contactless card you pay straight at the validator, and you must tap the same card in and out | oasa.gr · oasa.gr · oasa.gr |
| Barcelona | Barcelona El Prat (BCN), about 12 km from Plaça de Catalunya as the crow flies | TMB bus 46, €2.90 (single ticket) | Aerobús A1 (T1) and A2 (T2), €7.75, €13.30 return, 30-40 min according to TMB, 24 hours a day | At the airport metro stations neither the single ticket nor the T-casual is valid, you need the €5.90 Airport ticket (or the Hola Barcelona card), and anyone arriving with the wrong ticket has to buy one there to get out; the R2 Nord train leaves only from Terminal 2 (free shuttle from T1) and the only official taxi is black and yellow | aerobusbarcelona.es · tmb.cat · aena.es · aena.es |
| Belgrade | Belgrade Nikola Tesla (BEG), about 12 km from Republic Square as the crow flies | GSP bus 72, free, roughly every 25 min, 4:50 am-midnight | Same | For a taxi, take a fixed-price zone voucher from the electronic kiosks in arrivals | gsp.rs · bgprevoz.rs |
| Bergen | Bergen Flesland (BGO), 16 km from the centre according to Avinor | Bybanen light rail line 1, Skyss ticket in the app, by SMS or at the machine | Flybussen, about 20 min to the bus station | On Flybussen up to four under-17s travel free with a paying adult, and in a taxi the driver must state the fixed price before setting off (about 18 minutes to the centre) | avinor.no · avinor.no |
| Berlin | Berlin Brandenburg (BER), about 18 km from the Brandenburg Gate as the crow flies | FEX or RE20 train, €5 (ABC ticket), about 23 min; 4 trains an hour, 4:00-1:00 | Same | You need the €5 ABC ticket, because the airport is in zone C and the €4 AB ticket is not enough; the station is below Terminal 1, on level U2 | ber.berlin-airport.de · sbahn.berlin |
| Bilbao | Bilbao (BIO), at Loiu, about 4.5 km from Plaza Moyúa as the crow flies, over the hill | Bizkaibus A3247, €5 (occasional ticket), every 15 min, 6:10-23:40 | Same | The occasional ticket can be paid by card at the Bizkaibus kiosk in arrivals, where you can also top up a Barik card; a taxi costs about €27 into the city on weekdays and €30 on holidays according to Aena | bizkaia.eus · aena.es · aena.es |
| Bologna | Bologna Guglielmo Marconi (BLQ), about 6 km from Piazza Maggiore as the crow flies | Marconi Express monorail, €12.80; €8.20 online, 7 min, every 7-15 min, 5:40-24:00 | Same | The ticket costs €12.80 at the station or by card at the gates, but €8.20 bought online (€15 instead of €23.30 return); on some days the monorail is suspended and replacement buses run | marconiexpress.it · marconiexpress.it · marconiexpress.it |
| Bordeaux | Bordeaux-Mérignac (BOD), about 11 km from Place de la Comédie as the crow flies | Tram F, €1.90, 35 min to Hôtel de Ville, 45 to Saint-Jean; every 10 min | 30'Direct shuttle, €8, 30 min | Tram tickets are sold at the machines next to the bus stop in front of Hall B or in the TBM app; a taxi to the centre costs about €35 by day and €45 at night according to the airport | bordeaux.aeroport.fr · bordeaux.aeroport.fr · bordeaux.aeroport.fr |
| Brașov | Brașov-Ghimbav (GHV), about 9 km from Piața Sfatului as the crow flies | RATBV A1 express bus to the station, timetable tied to flights (current fare unclear) | Same | Departures are few and follow the flight schedule, so check the RATBV timetable before landing | ratbv.ro |
| Bratislava | Bratislava M. R. Štefánik (BTS), about 8 km from Hlavné námestie as the crow flies | Bus 61, IDS BK time ticket | Slovak Lines direct bus, from €1.90 online, about 15 min, up to 14 services a day | The 61 stop is in front of arrivals; at night there is line N61 | bts.aero · bts.aero |
| Wrocław | Wrocław Copernicus (WRO), about 10 km from the centre according to the airport | Bus 106, MPK ticket, 40-50 min, every 15 min | Same | On board you can only pay by card, and the ticket must be validated on boarding | airport.wroclaw.pl |
| Bruges | None: Brussels Airport (BRU, about 95 km as the crow flies) | SNCB train, about 1 h 25 min | Same | A €6.90 airport supplement is added to the fare, usually already included; the total price only shows in the SNCB journey planner | belgiantrain.be · brusselsairport.be |
| Brussels | Brussels Airport (BRU), at Zaventem, about 11 km from the Grand-Place as the crow flies | STIB bus 12 (Airport Line), €7.90 contactless, €8.40 on paper | SNCB train, 18 min, six an hour (price with supplement only in the SNCB planner) | From the airport into the city no other STIB ticket is valid on bus 12, not even the Brupass XL or the day pass | brusselsairport.be · belgiantrain.be · stib-mivb.be |
| Bucharest | Bucharest Henri Coandă (OTP), about 15 km from Piața Universității as the crow flies | CFR train, 6.50 lei (second class), 25 min, every 40-80 min | Same | Gara de Nord is not in the old town, so you continue by metro | bilete.cfrcalatori.ro |
| Budapest | Budapest Liszt Ferenc (BUD), about 16 km from the centre as the crow flies | Bus 200E to Kőbánya-Kispest, then metro M3, 850 forints (90-minute ticket) | Direct 100E bus, 2,500 forints, about 40 min, 24 hours a day | The 500-forint single ticket does not cover the change from 200E to the metro, and neither ordinary tickets nor passes are valid on the 100E (pass holders pay a 1,000-forint add-on); the official taxi is Főtaxi, on a regulated tariff (2,100 forints base plus 520 per km and 130 per minute) with the price worked out before you leave | bkk.hu · bkk.hu · bkk.hu · bud.hu · bud.hu |
| Cagliari | Cagliari Elmas (CAG), about 6 km from Piazza Yenne as the crow flies | Regional train, €1.30, about 4 min | Same | The train ticket is not valid on CTM buses, which have their own 90-minute ticket | lefrecce.it |
| Catania | Catania Fontanarossa (CTA), about 4 km from Piazza Duomo as the crow flies | Regional train, €2.20, about 8 min | Same | The Alibus ticket is sold at the airport machines or in the AMTS app | lefrecce.it · amts.ct.it · amts.ct.it |
| Chania | Chania Daskalogiannis (CHQ), about 12 km from the town as the crow flies | KTEL bus to the bus station, roughly every 30 min, 5:00-22:00 (fare not published) | Same | The stop is in front of departures, on the east side of the terminal, and KTEL does not publish the fare on a readable page, so we do not quote it here | e-ktel.com · chq-airport.gr |
| Cinque Terre | None: Pisa (PSA, about 70 km from Riomaggiore as the crow flies) | PisaMover plus regional train, €15.40 (single Trenitalia ticket), about 1 h 30 min | Same | From 14 March to 1 November 2026 the Cinque Terre Express fare applies on the La Spezia-Levanto stretch whichever village you go to, so the Cinque Terre Card pays off if you take several trains the same day | lefrecce.it |
| Copenhagen | Copenhagen Kastrup (CPH), about 7 km from Rådhuspladsen as the crow flies | Metro M2, DKK 30 (3 zones), about 15 min, every 4-6 min | Same | Metro ticket machines take no banknotes, only coins and cards | cph.dk · m.dk |
| Córdoba | None: Seville (SVQ, about 111 km from the Mezquita as the crow flies) | Tussam EA bus into Seville, €6, then a Renfe train to Córdoba (variable price, only on renfe.com) | Same | The EA ticket does not allow a change to other Tussam lines, so reaching the station takes a second ticket or a taxi on the flat city fare (€26 on weekdays by day, €29 at other times) | aena.es · aena.es · renfe.com |
| Kraków | Kraków Balice (KRK), about 12 km by rail from the centre | Bus 209 or 300 (902 at night), 6 zł | Koleje Małopolskie train, 20 zł, about 17 min, usually every 30 min | The train ticket office closes at 19:45, after that you buy on board or in an app; the only official taxi is Krakow Airport Taxi, at fixed prices by distance band (89 zł for 8 to 11.9 km, 109 zł for 12 to 14.9 km) for a single destination | krakowairport.pl · krakowairport.pl · krakowairport.pl · kolejemalopolskie.com.pl |
| Gdańsk | Gdańsk Lech Wałęsa (GDN), about 12 km from Długi Targ as the crow flies | Bus 210, 4.80 zł (single ride), about 40 min | Train changing at Gdańsk Wrzeszcz: the airport publishes neither price nor time | The bus stops are opposite the terminal next to car park P1, and the ZTM ticket is not valid on trains | airport.gdansk.pl · airport.gdansk.pl |
| Dublin | Dublin (DUB), about 9 km from O'Connell Bridge as the crow flies | Dublin Bus 16 or 41, €2 with Leap Card, €2.60 in coins | Dublin Express coach, from €9 online, from 14 min | On Dublin Bus you can only pay in coins, no notes and no cards, so get a Leap Card or the €2.60 Travel 90 sold in the shop by the Transport Zones; a taxi to the centre runs on the meter, €30-45 according to the airport | dublinbus.ie · transportforireland.ie · dublinexpress.ie · dublinairport.com |
| Dubrovnik | Dubrovnik Ruđer Bošković (DBV), 22.5 km from Dubrovnik according to the airport | Libertas buses 11, 27 and 38, daily | Official Platanus shuttle, shortly after each landing | By car it takes 30-35 minutes on average, but in summer allow up to an hour | dbv.hr |
| Edinburgh | Edinburgh (EDI), about 10.5 km from Waverley as the crow flies | Airlink 100 bus, £6, £8.50 return, about 30 min, 24 hours a day | Tram, £7.90, also about 30 min, every 7 min by day, last at 22:52 | Ordinary Lothian tickets are not valid on Airlink, the standard contactless daily cap excludes the airport tram, and the tram ticket must be bought before boarding (one from a machine must be used within 30 minutes); the only official taxi is Capital Cars, metered at council rates, about 20 minutes to the centre | lothianbuses.com · edinburghairport.com · edinburghairport.com · edinburghairport.com |
| Florence | Florence Amerigo Vespucci (FLR), about 6 km from the Duomo as the crow flies | T2 tram, €2 (90 minutes) | Same | The ticket is validated on boarding; taxis from the airport have a set fare to hotels and city addresses, €28 on weekdays according to the City's table in force since 1 May 2024, plus €1.20 per bag | files.at-bus.it · mobilita.comune.fi.it · servizi.comune.fi.it |
| Funchal, Madeira | Madeira Cristiano Ronaldo (FNC), about 14 km from Funchal Cathedral as the crow flies | Aerobus, €6.70 (children €3.30), about 24 min to Avenida do Mar, 50 to Praia Formosa | Same | On Sundays and holidays there are fewer runs and there is no service on 25 December | siga.madeira.gov.pt |
| Ghent | None: Brussels Airport (BRU, about 56 km as the crow flies) | SNCB train, about 55 min | Same | A €6.90 airport supplement is added to the fare, usually already included; the total price only shows in the SNCB journey planner | belgiantrain.be · brusselsairport.be |
| Genoa | Genoa Cristoforo Colombo (GOA), about 7 km from Piazza De Ferrari as the crow flies | AMT Volabus, €10 (24-hour MetDaily), about 30 min | Same | There is no single ticket on the Volabus, you need the €10 MetDaily, valid 24 hours across the whole AMT network including buses, metro, funiculars and Navebus; you can also pay on board by contactless card | amt.genova.it · amt.genova.it |
| Granada | Granada-Jaén Federico García Lorca (GRX), 17 km from the centre according to Aena | ALSA line 245 bus, about 45 min (price only when booking) | Same | The last bus leaves about 30 minutes after the last scheduled flight lands, and taxis to Granada charge the intercity fare | aena.es · aena.es · alsa.com |
| Helsinki | Helsinki-Vantaa (HEL), about 17 km from Senate Square as the crow flies | I / P train, €4.80 (ABC ticket, contactless), about 27 min (I) or 32 min (P) | Same | The airport is in zone C, so an AB ticket for the centre is not enough; the ABC day ticket costs €12.80 | hsl.fi |
| Hydra | None: Athens (ATH, about 78 km from Hydra port as the crow flies) | X96 express bus to Piraeus, €5.50, around the clock, then Hellenic Seaways catamaran from 1 h 30 min (price only when booking) | Same | In rough seas sailings to Hydra are cancelled, and Hellenic Seaways posts the changes on its website; there are no vehicles on the island | oasa.gr · oasa.gr · hellenicseaways.gr |
| Innsbruck | Innsbruck (INN), about 4 km from the Golden Roof as the crow flies | IVB bus F, €3.30 (45 min on paper, 90 online), about 20 min | Same | The paper ticket is valid for 45 minutes from validation on board, the one bought in the online shop for 90 minutes but it must be activated before boarding | innsbruck-airport.com |
| Istanbul | Istanbul (IST), about 36 km from Sultanahmet as the crow flies | M11 metro towards Gayrettepe or Havaist buses (11 routes); lira fares updated often | The sources do not compare them | Lira fares change often with inflation, so check them at the machines or on the Havaist website; from Sabiha Gökçen (SAW), on the Asian side, there is the M4 metro | istairport.com |
| Kotor | Tivat (TIV), 8 km from Kotor according to the airport | Car or taxi, about 12 min (8 km) | Same | The other airport, Podgorica, is about an hour and a half away by car | montenegroairports.com |
| Ksamil | None: Corfu (CFU), about 20 km as the crow flies but across the sea; Tirana (TIA), about 185 km | From Tirana: bus to the North-South terminal, 300 lek, 20-30 min, then a 5-6 hour bus to Saranda | From Corfu: taxi to the port, hydrofoil to Saranda (25-30 min), then bus or taxi, 20-25 min | Cars rented on Corfu cannot be shipped to Albania, and the 400-lek Tirana airport bus goes to the centre (behind the Opera), not to the terminal for buses south | tirana-airport.com |
| Valletta | Malta International Airport (MLA), about 6 km from the Triton Fountain as the crow flies | Airport Direct TD4, €3, every 30 min | Same | The bus leaves from the bus terminal signposted at the arrivals exit and no booking is needed | publictransport.com.mt |
| Lagos | None: Faro (FAO, about 63 km as the crow flies) | CP regional train, €8.30, about 1 h 30 to 1 h 40, roughly every 2 hours | Same | Direct trains leave roughly every two hours, so check the CP timetable before landing; Lagos station is beyond the marina, a quarter of an hour on foot from the centre | cp.pt |
| Lanzarote | Lanzarote César Manrique (ACE), about 6 km from Arrecife as the crow flies | Bus line 22 (weekdays) or 23 (weekends, via Playa Honda), 10-15 min; line 22 every 40-50 min, line 23 hourly | Taxi, meter plus a €2.10 airport supplement | Taxis run on the meter with a €2.10 airport supplement and a higher tariff at night, on Sundays and holidays | aena.es · aena.es |
| Lecce | Brindisi (BDS), about 39 km from Piazza Sant'Oronzo as the crow flies | STP bus to Brindisi station, €1.10, 10-15 min, then Trenitalia regional, €3.50, about 30 min | Same | The bus ticket is sold at the airport by Bar Gelateria Sandrino, and between Brindisi station and Lecce some options offered by the ticketing system use FSE buses and take over two hours: pick the direct regional train | stpbrindisi.it · trenitalia.com · lefrecce.it |
| Lyon | Lyon Saint-Exupéry (LYS), about 20 km from Place Bellecour as the crow flies | Rhônexpress tram, €17.40 at the machines, €16.30 online, 30 min, every 15 min, 4:25-00:00 | Same | It costs €17.40 at the machines and €16.30 online (€30.30 and €28.50 return), some machines are out of order and Rhônexpress advises buying online | rhonexpress.fr · rhonexpress.fr |
| Lisbon | Lisbon Humberto Delgado (LIS), about 7.5 km from Rossio as the crow flies | Red metro line, €1.90 plus €0.50 navegante card; €1.92 with a bank card, about 20 min | Taxi, €10-15 to the centre, luggage included | Carris city buses only take luggage up to 50x40x20 cm, and taxis and ride-hailing cars are taken at the rank or through the app, never from someone approaching you in the terminal; in a taxi check the meter is on and ask for a receipt | lisbonairport.pt |
| London | London Heathrow (LHR), about 23 km from Trafalgar Square as the crow flies | Piccadilly line Tube, £5.90 peak, £4 off-peak (contactless or Oyster), about 50 min | Heathrow Express, 15 min to Paddington, every 15 min, from £10 only 30 days ahead | The Heathrow Express is outside daily caps and Travelcards, and all Heathrow stations are in zone 6, so the cap that applies is the zones 1-6 one (£16.30) | london.gov.uk · tfl.gov.uk · heathrow.com · heathrow.com |
| Ljubljana | Ljubljana Jože Pučnik (LJU), about 19 km from Prešernov trg as the crow flies | IJPP bus, about 30 min, 1-2 departures an hour | Same | Nomago Intercity runs can only be boarded with a ticket bought in advance; the first morning run takes almost an hour | ap-ljubljana.si |
| Madrid | Madrid-Barajas (MAD), about 14 km from Puerta del Sol as the crow flies | Cercanías C1 train, €1.70 (1-2 zones) | Exprés Aeropuerto bus to Atocha, €5, 30-40 min, around the clock | On the metro the airport stations charge a €3 supplement on top of the ticket, which the tourist pass includes, but the tourist pass is not valid on the Exprés; on Cercanías you validate on the way out too | crtm.es · emtmadrid.es · aena.es · madrid.es |
| Málaga | Málaga-Costa del Sol (AGP), about 8 km from Plaza de la Constitución as the crow flies | Cercanías C1 train, €1.80 (1-2 zones), 12 min (8 to María Zambrano) | Same | On Cercanías you validate on the way out too, otherwise you are charged the maximum fare for all zones; taxis run on the meter with a minimum fare from the airport | aena.es · aena.es · renfe.com · aena.es |
| Matera | None: Bari (BRI, about 80 km as the crow flies) | Ferrotramviaria train to Bari Centrale, €5.30, about 30 min, then Ferrovie Appulo Lucane, €6.20 | Same | The airport train ticket includes a €4 surcharge, and FAL trains leave from their own station next to Bari Centrale, on a separate ticket | ferrotramviaria.it · ferrotramviaria.it · ferrovieappulolucane.it · bari.airports.aeroportidipuglia.it |
| Menorca | Menorca (MAH), about 5 km from Maó as the crow flies | Bus line 10, €2.80, every 30 min by day, hourly early and late | Same | Anyone heading to Ciutadella or the coastal resorts has to change in Maó, and with reduced winter frequencies it pays to check the timetable before landing | aena.es |
| Milan | Linate (LIN), about 7 km from the Duomo as the crow flies; Malpensa (MXP), about 41 km | Linate: M4 metro, €2.20, 12 min to San Babila | Malpensa: Malpensa Express, €15, about 37 min to Cadorna, 51 to Centrale | The Malpensa Express ticket is only valid on Malpensa Express trains, not on ATM transport; at San Babila, to change from M4 to M1, you exit the gates and tap in again on the same ticket; M4 closes around 00:30 and the NM4 night bus replaces it | atm.it · malpensaexpress.it · malpensaexpress.it |
| Munich | Munich Franz Josef Strauss (MUC), about 28 km from Marienplatz as the crow flies | S-Bahn S1 / S8, €15.10 single M-5; €17.50 Airport-City-Day-Ticket, about 35 min, every 10 min | Same | The airport is in zone 5, so a zone M ticket alone is not enough | mvv-muenchen.de · mvv-muenchen.de |
| Mostar | None: Sarajevo (SJJ), about 69 km as the crow flies, or Split and Dubrovnik | Centrotrans bus to Baščaršija, 5 KM, then train or bus to Mostar | Same | There are no direct links from the airports, you reach the city first; in Sarajevo the Centrotrans bus from the airport to Baščaršija costs 5 KM | sarajevo-airport.ba |
| Naples | Naples Capodichino (NAP), about 6 km from Piazza del Plebiscito as the crow flies | ANM Alibus, €5, about 15 min to the station, 35 to Beverello | Shared taxi on the same route, €6 per person | The Alibus is not covered by the TIC city network ticket; you buy the ticket on board, at the machines in arrivals or by contactless card | anm.it · comune.napoli.it |
| Naxos | Naxos (JNX), about 3 km from the Portara as the crow flies | Taxi to Chora: KTEL lists no airport line | Same | Arrivals by ferry land at the Chora port instead, where all KTEL buses also leave from | naxosbuses.com |
| Nerja | None: Málaga (AGP, about 56 km as the crow flies) | Direct ALSA Nerja-Airport bus, from level 0 at arrivals (price only when booking) | Same | The ALSA bus includes one suitcase up to 20 kg only, each extra bag costs from €5 per trip | aena.es · aena.es · renfe.com · alsa.com |
| Nice | Nice Côte d'Azur (NCE), about 6 km from Place Masséna as the crow flies | Tram 2, €10 return (AERO), under 30 min, every 7-8 min on weekdays | Same | No tickets are sold on board; the Lignes d'Azur rechargeable card (€2 refundable deposit) is not sold at the terminal machines; the tram between Terminal 2, Terminal 1 and Grand Arénas is free | nice.aeroport.fr |
| Oslo | Oslo Gardermoen (OSL), about 37 km from the Storting as the crow flies | Vy regional or local train on a Ruter zone ticket | Flytoget, NOK 276, 19 min, every 10 min | The Flytoget ticket is not valid on other lines, and the Ruter ticket must cover every zone up to the airport | flytoget.no · flytoget.no · avinor.no · ruter.no |
| Ostuni | Brindisi (BDS), about 32 km as the crow flies | STP bus to Brindisi station, €1.10, 10-15 min, then Trenitalia regional, €3.50, about 20 min | Same | The bus ticket is sold at the airport by Bar Gelateria Sandrino, Ostuni station is outside the town, and some options offered by the ticketing system go via FSE buses and take over two hours: pick the direct regional train | stpbrindisi.it · trenitalia.com · lefrecce.it |
| Palermo | Palermo Falcone Borsellino (PMO), about 24 km from the Quattro Canti as the crow flies | Prestia e Comandè shuttle, €6; €6.50 on board; €10 return, about 50 min, every 30 min | Train, €6.80, about 35 min to Notarbartolo, 55 to Centrale | Some train services involve a change and take over an hour | prestiaecomande.it · lefrecce.it |
| Paris | Charles de Gaulle (CDG), about 24 km from Notre-Dame as the crow flies; Orly (ORY), about 14 km | CDG: RATP buses 350 and 351, €2.05, 60-90 min | CDG: RER B, €14, 25-30 min, every 6-15 min | Roissybus has not run since 1 March 2026 (line 9517 from Saint-Denis-Pleyel replaces it); the airport ticket cannot be stored on the same pass or phone as other tickets; taxis have fixed fares, from CDG €56 to the Right Bank and €65 to the Left Bank, from Orly €45 and €36 | iledefrance-mobilites.fr · iledefrance-mobilites.fr · parisaeroport.fr · parisaeroport.fr |
| Plovdiv | Sofia (SOF), about 125 km as the crow flies; Plovdiv also has its own small airport (PDV) | M4 and M2 metro to Sofia central station, then BDŽ train, €5.62, 2 h 40 to 3 h | Same | Plovdiv also has its own airport (PDV), worth checking if your flight lands there | sofia-airport.eu |
| Polignano a Mare | Bari (BRI), about 42 km as the crow flies | Ferrotramviaria train to Bari Centrale, €5.30, about 30 min, then Trenitalia regional, €3.10, about 30 min | Same | The airport train ticket is always a single and includes a €4 surcharge, and the two legs are paid separately; the airport's fixed taxi fares only go as far as Bari (€25 to the main station) | ferrotramviaria.it · ferrotramviaria.it · bari.airports.aeroportidipuglia.it · lefrecce.it |
| Porto | Porto Francisco Sá Carneiro (OPO), about 13 km from Avenida dos Aliados as the crow flies | Metro line E (violet), €2.30 (Z4) + €0.60 Andante card, 27 min | Same | You need the rechargeable Andante Azul card, which costs €0.60 the first time; the Z4 ticket is valid 1 hour 15 minutes including changes | metrodoporto.pt · metrodoporto.pt |
| Prague | Prague Václav Havel (PRG), about 20 km from the centre | Trolleybus 59 to Nádraží Veleslavín, then metro A, 46 CZK in the app, 50 CZK on paper (90-minute ticket), about 35 min | Same | The only official taxi is Uber Airport, the airport puts the ride to the centre at about 800 CZK and warns against people offering rides outside the terminals; bags over 25x45x70 cm need a 20 CZK ticket | pid.cz · prg.aero |
| Reykjavík | Keflavík (KEF), about 50 km from Reykjavík according to the airport | Strætó route bus 55, via Hafnarfjörður | Flybus, about 45 min to BSÍ terminal, 40 min after each landing | The airport advises booking the Flybus in advance, and the Flybus ends at the BSÍ terminal, not in the centre, apart from its listed hotel stops | kefairport.com · kefairport.com |
| Riga | Riga (RIX), about 8 km from Doma laukums as the crow flies | Bus 22, €1.50 (90 minutes); €1.81 from the driver, card only, about 40 min | Same | A taxi takes about 20 minutes on average, half the bus time | riga-airport.com · riga-airport.com |
| Rhodes | Rhodes Diagoras (RHO), about 13 km from the Old Town as the crow flies | RODA city bus to Rhodes town (fare not published) | Same | The airport refers to the RODA timetables, which change with the season, and publishes no fare | rho-airport.gr · rhodes.gr |
| Rome | Rome Fiumicino (FCO), about 23 km from Piazza Venezia as the crow flies | FL1 regional train, €8, 48 min to Tiburtina; every 15 min on weekdays, 30 on holidays | Leonardo Express (non-stop), €14, 32 min, every 15 min, 5:38-23:27 | The ticket is validated at the gates before boarding, and anyone riding the Leonardo Express on the €8 regional ticket pays €6 difference plus an €8 surcharge; BIRG and BTR tickets are not valid for Fiumicino | adr.it · adr.it · trenitalia.com · trenitalia.com · trenitalia.com |
| Salzburg | Salzburg W. A. Mozart (SZG), about 3.5 km from Mozartplatz as the crow flies | Bus 10 (Mon-Sat), €2.60 (one-hour ticket), about 15 min, every 15 min | Same | The ticket is not sold on board, you buy it at the machine at the stop or online | salzburg-airport.com |
| Thessaloniki | Thessaloniki Macedonia (SKG), about 13 km from Aristotelous Square as the crow flies | OASTH bus 01X / 01N, €2 (70 minutes) | Same | The €0.60 city ticket and the €2.50 day ticket are not valid on the airport lines | oseth.com.gr |
| San Sebastián | Hondarribia (EAS), about 16 km as the crow flies, few flights; Bilbao (BIO), about 76 km | From Bilbao: Lurraldebus DO04, about hourly, much cheaper with the Mugi card | Same | With a Mugi card the Bilbao airport bus costs much less than without, and a taxi from Bilbao airport to San Sebastián costs about €185 on weekdays according to Aena | aena.es · aena.es · aena.es · mugi.eus |
| Santorini | Santorini (JTR), about 5 km from Fira as the crow flies | KTEL bus (Fira-Kamari-Monolithos-Airport line), €2.20; €2.80 from 00:30 to 5:00 | Same | Summer buses are crowded, and taxis on the island are few: book one ahead | ktel-santorini.gr |
| Sarajevo | Sarajevo (SJJ), about 9 km from the Sebilj as the crow flies | Centrotrans bus, 5 KM, roughly hourly, 7:30 am-11:30 pm | Same | The timetable is adjusted from time to time, so check it on the airport website before you travel | sarajevo-airport.ba |
| Syracuse | None: Catania (CTA, about 50 km from Piazza Duomo in Ortigia as the crow flies) | Regional train, €8.80-9.70, about 1 h 20 to 1 h 45 | Same | Some train services involve a change or run as a replacement bus, so check the option before buying | lefrecce.it |
| Seville | Seville San Pablo (SVQ), about 9 km from the cathedral as the crow flies | Tussam EA bus, €6, €8 return | Taxi, €26 weekdays 7:00-21:00, €29 at other times | Taxis have a flat fare for the whole city and charge €0.57 for each suitcase over 10 kg | aena.es · aena.es |
| Sofia | Sofia Vasil Levski (SOF), about 7 km from Alexander Nevsky Cathedral as the crow flies | M4 metro, €0.80, about 20 min | Same | If you arrive at Terminal 1, first take the shuttle bus to Terminal 2 | sofia-airport.eu |
| Split | Split (SPU), about 12 km from the Peristyle as the crow flies | Promet bus 37, €3, about 50 min, every 20-30 min | Same | In the other direction the same line reaches Trogir in 10 minutes for €2.50 | promet-split.hr |
| Stockholm | Stockholm Arlanda (ARN), about 37 km from Gamla stan as the crow flies | SL commuter train, SL ticket plus SEK 157 station fee | Arlanda Express, SEK 340 (SEK 199 at least 5 days ahead), 18 min, every 15 min | Anyone boarding or leaving at Arlanda Central pays a SEK 157 station fee at the gates unless it is already in the ticket; on the Arlanda Express children travel free with an adult and each extra travel companion pays SEK 120 | swedavia.com · arlandaexpress.com |
| Strasbourg | Strasbourg-Entzheim (SXB), about 10 km from the cathedral as the crow flies | TER shuttle train, €3.20 train only; from €1.90 with the CTS app; €4.60 for 24 hours, 8 min, up to 5 an hour | Same | The train-only ticket is sold on the platforms, the combined one at the CTS machine in the terminal | strasbourg.aeroport.fr |
| Tallinn | Tallinn Lennart Meri (TLL), about 6 km from Raekoja plats as the crow flies | Tram T2, €2 (1 hour) | Same | Because of works on the new tram line, the long-distance bus stops at the airport have moved, so follow the signs | airport.ee |
| Taormina | None: Catania (CTA, about 47 km as the crow flies) | Regional train, €6.50, about 1 h on direct services | Same | Some options offered by the ticketing system involve a change and take up to an hour and a half; the station is down on the coast, not in town | lefrecce.it |
| Tenerife | Two: Tenerife South (TFS), about 14 km from Los Cristianos as the crow flies; Tenerife North (TFN), about 10 km from Santa Cruz | South: TITSA 40, €3.70, about 40 min; North: TITSA 20, €2.65, 20 min | Same | Saturday and holiday timetables differ, and anyone staying several days saves with the ten+ card and the 1 or 7-day passes; line 343 links the two airports in 50 minutes | titsa.com · titsa.com · aena.es |
| Tirana | Tirana Mother Teresa (TIA), about 12 km from Skanderbeg Square as the crow flies | LU-NA bus, 400 lek (€4.50), 30-40 min, hourly, around the clock | Same | The bus to the North-South terminal (300 lek, 8 am-6 pm) ends elsewhere: it is for buses to the rest of the country | tirana-airport.com |
| Toledo | None: Madrid-Barajas (MAD, about 81 km as the crow flies) | Exprés Aeropuerto bus to Atocha, €5, 30-40 min, then Avant train, about 30 min (variable price) | Same | The Madrid tourist pass is not valid on the Exprés, and the cheapest Avant tickets go to those who book ahead | emtmadrid.es · crtm.es · renfe.com |
| Turin | Turin Caselle (TRN), about 15 km from Piazza Castello as the crow flies | Train, €3.80, about 30 min, roughly every 30 min | Same | Trains run roughly every half hour, so check the timetable before leaving arrivals | lefrecce.it |
| Trieste | Trieste (TRS), at Ronchi dei Legionari, about 30 km from Piazza Unità d'Italia as the crow flies | Trenitalia regional train, €4.75, about 30 min | Same | Buses leave from the bus station of the intermodal hub, reached by a footbridge, no longer from the arrivals area; the ticket must be bought before boarding, and the Trieste urban day ticket is not valid on extra-urban buses | tplfvg.it · lefrecce.it |
| Tromsø | Tromsø (TOS), about 4 km from the cathedral as the crow flies | Svipper city buses 40 and 42 | Same | City bus tickets are bought in the Troms Mobillett app or at the machine at the stop, because you cannot pay cash on board | avinor.no · avinor.no |
| Valencia | Valencia (VLC), about 9 km from Plaza del Ayuntamiento as the crow flies | Metro lines 3 and 5, €4.80 (AB+ ticket), every 15 min on weekdays, about 20 at weekends | Same | The airport is a fare zone of its own, the "+", so the single ticket to the centre is the €4.80 AB+ one, not the €1.50 zone A ticket; tourist passes also cover the airport only in the T+ version | aena.es · metrovalencia.es |
| Warsaw | Warsaw Chopin (WAW), about 10 km from the Old Town Square as the crow flies | SKM S2, S3 or KM RL trains; bus 175 (N32 at night), 4.40 zł (75-minute zone 1 ticket) | Same | City buses leave from the Lotnisko Chopina, Przyloty 02 stop on the lower level, not from the departures floor; tickets are sold at machines or in apps and must be validated | wtp.waw.pl · wtp.waw.pl |
| Venice | Venice Marco Polo (VCE), about 8 km from St Mark's Square as the crow flies | ACTV Aerobus line 5 or ATVO express bus, €10 ACTV (75-minute ticket), €18 return, about 20 min according to ATVO | Same; the Alilaguna boat costs €18 | ACTV 1, 2, 3 and 7-day passes do not cover the airport buses unless you buy the €7 supplement (€13 return) at the same time | actv.avmspa.it · alilaguna.it · atvo.it |
| Verona | Verona Valerio Catullo (VRN), about 9.5 km from Piazza Bra as the crow flies | ATV Verona Airlink shuttle, €7, 15 min, every 20 min | Same | The ticket is valid for 75 minutes and can be paid on board by contactless card at the same price, with no fee | atv.verona.it · atv.verona.it |
| Vienna | Vienna Schwechat (VIE), about 20 km from Stephansplatz as the crow flies | ÖBB train (Railjet, REX, IC), about 15 min, around 2 services an hour | CAT by coach, €14.90, 21 min, every 12-15 min | Until the end of October 2027 the S-Bahn section between Praterstern and Hauptbahnhof is closed: the S7 only reaches St. Marx; a Vienna core zone ticket is not valid to the airport | cityairporttrain.com · cityairporttrain.com · oebb.at · wienerlinien.at |
| Vilnius | Vilnius (VNO), about 6 km from the cathedral as the crow flies | Bus 3G / 88, €1.25 (60 minutes, contactless), about 20 min; 3G every 10 min, 88 every 20-30 | Same | The m.Ticket and Trafi apps only work with a Lithuanian phone number; the JUDU card costs €1.50 at the airport Narvesen | judu.lt · judu.lt |
| Zagreb | Zagreb Franjo Tuđman (ZAG), about 11 km from Jelačić Square as the crow flies | ZET bus 290, 45-50 min to Kvaternikov trg | Pleso Prijevoz shuttle, €9 online, 35-40 min, every 30 min | The shuttle ends at the bus station, not Jelačić Square | zagreb-airport.hr · plesoprijevoz.hr |
| Zurich | Zurich (ZRH), at Kloten, about 9.5 km from the main station as the crow flies | SBB train, CHF 7.20 (3 zones, 2nd class), 15 min, every 10 min | Same | The city of Zurich counts as two ZVV zones and the airport is outside the city, so you need at least three zones, CHF 7.20 in second class; the ZVV app or the ticket machine works out the zones when you enter start and destination | flughafen-zuerich.ch · zvv.ch |
The most common trap: the airport zone
In many cities the airport sits outside the urban zone, and the city-centre ticket is not enough. In Berlin you need the €5 ABC ticket because the airport is in zone C, in Helsinki the €4.80 ABC ticket for the same reason, in Munich the airport is in zone 5 and the M-5 single costs €15.10, in Zurich you need at least three zones, in Valencia the €4.80 AB+ ticket instead of the €1.50 one. In Vienna the core zone ticket only runs to the Schwechat boundary, not to the airport.
Then there are airport lines where ordinary tickets are not valid at all: bus 12 in Brussels, the 100E in Budapest, the Airlink in Edinburgh, the Alibus in Naples, buses 01X and 01N in Thessaloniki, where the €2.50 day ticket is not valid. In Genoa there is no single ticket on the Volabus: you need the €10 day pass.
When it pays to spend more
The express train rarely pays off, but sometimes it does. In London the Piccadilly line costs £5.90 at peak and takes about 50 minutes, the Heathrow Express 15 minutes to Paddington. In Oslo the Flytoget costs NOK 276 and takes 19 minutes, while Vy regional trains accept a Ruter zone ticket. In Rome the FL1 regional costs €8 and the Leonardo Express €14, but anyone boarding the Leonardo with the €8 ticket pays the difference plus an €8 surcharge.
And often the sales channel matters more than the vehicle: the Bologna monorail costs €12.80 at the machine and €8.20 online, the Rhônexpress in Lyon €17.40 at the machine and €16.30 online, the Arlanda Express in Stockholm drops from SEK 340 to SEK 199 if you buy at least five days ahead. At the other extreme, in Belgrade bus 72 is free like all city transport, in Sofia the metro costs €0.80 and in Cagliari the train costs €1.30 and takes 4 minutes.
What is changing these months
Until the end of October 2027 the S-Bahn section between Praterstern and Hauptbahnhof in Vienna is closed for works: the CAT runs as a coach to Wien Mitte and the S7 only reaches St. Marx. In Paris the Roissybus has not existed since 1 March 2026. The lira fares in Istanbul change too often for a table, so there the row names the lines and points you to the machines.
The data can be reused with attribution, and it is also in a CSV file with the hundred rows and links to the sources (in Italian). If a figure looks wrong, the Source column takes you to the airport's or the operator's page: that is where it is worth looking.
Dossiers mentioned in this article
- Alberobello, Puglia, Italy
- Alghero, Sardinia, Italy
- Hamburg, Germany
- Amsterdam, Netherlands
- Antwerp, Belgium
- Athens, Greece
- Barcelona, Spain
- Belgrade, Serbia
- Bergen, Norway
- Berlin, Germany
- Bilbao, Spain
- Bologna, Italy
- Bordeaux, France
- Brașov, Transylvania, Romania
- Bratislava, Slovakia
- Wrocław, Lower Silesia
- Bruges, Belgium
- Brussels, Belgium
- Bucharest, Muntenia, Romania
- Budapest, Hungary
- Cagliari, Sardinia, Italy
- Catania, Sicily, Italy
- Chania, Crete, Greece
- Cinque Terre, Liguria
- Copenhagen, Denmark
- Córdoba, Andalusia
- Krakow, Poland
- Gdańsk, Pomerania
- Dublin, Ireland
- Dubrovnik, Croatia
- Edinburgh, Scotland/United Kingdom
- Florence, Italy
- Madeira (Funchal), Portugal
- Ghent, Belgium
- Genoa, Italy
- Granada, Spain
- Helsinki, Finland
- Hydra, Greece
- Innsbruck, Tyrol
- Istanbul, Turkey
- Kotor, Montenegro
- Ksamil, Albania
- Valletta, Malta
- Lagos, Algarve, Portugal
- Lanzarote, Canary Islands, Spain
- Lecce, Salento
- Lyon, France
- Lisbon, Portugal
- London, United Kingdom
- Ljubljana, Slovenia
- Madrid, Spain
- Málaga, Spain
- Matera, Basilicata
- Menorca, Balearic Islands, Spain
- Milan, Italy
- Munich, Germany
- Mostar, Bosnia and Herzegovina
- Naples, Italy
- Naxos, Cyclades, Greece
- Nerja, Andalusia, Spain
- Nice, France
- Oslo, Norway
- Ostuni, Puglia, Italy
- Palermo, Sicily, Italy
- Paris, France
- Plovdiv, Bulgaria
- Polignano a Mare, Puglia, Italy
- Porto, Portugal
- Prague, Czech Republic
- Reykjavík, Iceland
- Riga, Latvia
- Rhodes, Dodecanese, Greece
- Rome, Italy
- Salzburg, Austria
- Thessaloniki, Greece
- San Sebastián, Spain
- Santorini, Cyclades
- Sarajevo, Bosnia and Herzegovina
- Syracuse (Ortigia), Sicily, Italy
- Seville, Spain
- Sofia, Bulgaria
- Split, Croatia
- Stockholm, Sweden
- Strasbourg, France
- Tallinn, Estonia
- Taormina, Sicily, Italy
- Tenerife, Canary Islands, Spain
- Tirana, Albania
- Toledo, Castile-La Mancha
- Turin, Italy
- Trieste, Friuli Venezia Giulia, Italy
- Tromsø, Arctic Norway
- Valencia, Spain
- Warsaw, Poland
- Venice, Italy
- Verona, Italy
- Vienna, Austria
- Vilnius, Lithuania
- Zagreb, Croatia
- Zurich, Switzerland
