Malpensa, Linate or Bergamo: Which Milan Airport
Milan is served by three airports, and the names are easy to confuse. Malpensa (MXP) is the intercontinental airport 50 km north-west of the city, Linate (LIN) is the city airport 7 km east of the Duomo, and Bergamo Orio al Serio (BGY), sold as “Milan Bergamo”, is the low-cost airport 45 km east near Bergamo. This guide sets out what flies from each, how each connects to the city, and how to move between them, as of September 2026.
Malpensa: long-haul and most airlines
Malpensa handles every intercontinental flight to Milan and most of the full-service European ones, plus easyJet from its own Terminal 2. It is the furthest from the centre, but the Malpensa Express reaches Milano Cadorna in about 37 minutes and Milano Centrale in about 52 for €15, coaches reach Centrale for about €10, and a taxi is a fixed fare of around €110 to €114; the transport guide has the details. It is the only one of the three with a hotel inside the terminal, the Sheraton, and with a full set of airport hotels around it.
Linate: the city airport
Linate is 7 km from the centre and since 2024 has the M4 metro line running from a station under the terminal to San Babila, in the middle of the city, in about 12 minutes, with a standard urban ticket. ITA Airways, British Airways, Lufthansa, Air France, KLM, Iberia and easyJet fly short-haul European and domestic routes from its single terminal. For a meeting in central Milan it beats Malpensa by an hour each way, and it is the airport to choose when the fare is similar.
Bergamo: the Ryanair airport
Bergamo Orio al Serio is Ryanair’s base and also serves Wizz Air and other low-cost carriers. It is 45 km east of Milan and 5 km from the city of Bergamo; coaches from the terminal to Milano Centrale take about 50 minutes for €10 to €12 and run around the clock, and the airport’s own hotels are in Orio al Serio and Bergamo. A “Milan” fare to Bergamo comes with a longer transfer: allow the coach time and the Centrale connection when comparing it with Malpensa.
Transfers between the airports
Malpensa to Bergamo has direct coaches run by Orio Shuttle, Flibco and others, taking about 1 hour 30 minutes to 1 hour 55 minutes for €15 to €25, several times a day; a taxi is a fixed fare of roughly €200. Malpensa to Linate has no direct scheduled coach as of 2026: the practical route is a coach or train to Milano Centrale and the Linate bus or the M4 metro from there, about two hours door to door, or a taxi at a fixed fare of about €130 to €140, which the Sheraton also offers as a private car at €140. Linate to Bergamo is a coach via Centrale or a taxi. In every case a connection between two Milan airports on separate tickets needs four hours or more, and an overnight at a Malpensa hotel is safer than a same-day cross-town dash; the transfers guide lists the hotel shuttles for the Malpensa end.
Frequently Asked Questions
Which Milan airport is closest to the city centre?
Linate, 7 km east of the centre, with the M4 metro running from the terminal to San Babila in the city centre in about 12 minutes. Malpensa is 50 km to the north-west, 37 minutes to Cadorna by train, and Bergamo is 45 km to the east, about 50 minutes to Milano Centrale by coach.
How do I transfer between Malpensa and Linate or Bergamo?
Malpensa to Bergamo has direct coaches (Orio Shuttle, Flibco and others) taking about 1 hour 30 minutes to 1 hour 55 minutes for €15 to €25. Malpensa to Linate has no direct scheduled coach as of 2026: take a coach or the train to Milano Centrale and change to the Linate bus or the metro, about 2 hours in all, or a taxi at a fixed fare of roughly €130 to €140.
Can I stay at a Malpensa hotel and fly from Linate the next day?
Yes, but allow two hours or more for the transfer and check the first departures. A hotel near Linate or in the city is the better choice for an early Linate flight; the Malpensa hotels are for Malpensa and, at a stretch, Bergamo.
Information last verified: September 23, 2026