Transfers

Malpensa vs Linate vs Bergamo: which Milan airport is actually best

10 min read

Milan has three commercial airports and they are not interchangeable. Choosing the wrong one can add 90 minutes and 60 EUR to a two-night trip. Here is the comparison nobody makes clearly at booking time.

The 30-second version

| | Malpensa (MXP) | Linate (LIN) | Bergamo (BGY) | |---|---|---|---| | Distance to centre | ~50 km | ~8 km | ~50 km | | Best transfer | Malpensa Express train | M4 metro | Shuttle bus | | Typical time to Centrale | 50-55 min | 25-30 min | 55-70 min | | Typical public cost | ~13 EUR | ~2.20 EUR | ~10-12 EUR | | Airlines | Long-haul + full service | Short-haul, business heavy | Low cost |

If two flights cost the same, Linate wins every time.

Linate (LIN): the one locals want

Since the M4 blue metro line opened, Linate is the most convenient airport in Italy relative to its city. You walk out of arrivals, ride an escalator, and you are on a metro that reaches San Babila in about 15 minutes. From San Babila the M1 red line connects to the rest of the network.

  • Tiny terminal, short walks, security rarely dramatic.
  • Metro fare is the standard urban ticket, around 2.20 EUR.
  • Downside: mostly short-haul European and domestic routes, and fares run higher than the low-cost airports.

For a 48-hour trip, the extra 40 EUR on the ticket is usually cheaper than the time and transfer cost of the alternatives.

Malpensa (MXP): the default long-haul gateway

MXP is where intercontinental flights land, and it is 50 km northwest of the city.

  • Malpensa Express runs from both T1 and T2 to Milano Centrale (about 52 minutes) and to Cadorna (about 45 minutes). Roughly 13 EUR, twice hourly for most of the day.
  • Coaches to Centrale cost around 10 EUR and take 50-70 minutes depending on traffic.
  • Taxi to the centre is a fixed rate of about 110 EUR.
  • Between T1 and T2 there is a free shuttle; budget 15-20 minutes for it.

Malpensa is perfectly manageable, but it punishes tight connections and late arrivals. After roughly midnight the train stops and you are into coach or car territory.

Bergamo (BGY): the low-cost trade-off

BGY is a well-run single-terminal airport that happens to be 50 km from the city it advertises. Shuttle buses to Milano Centrale run every 20-30 minutes for 10-12 EUR, taking 55-70 minutes. There is also a rail option via Bergamo station.

The maths: if the flight saves you 60 EUR versus Linate, and the transfer costs 12 EUR each way plus two extra hours of your life, it is still often worth it for a longer stay. For a single overnight, it rarely is.

Which to pick by trip type

Weekend city break, two people: Linate first, Malpensa second. The transfer difference eats a whole evening otherwise.

Family with children and luggage: whichever airport, but book a car. Dragging three suitcases and a stroller through Centrale at 22:00 is the memory you will keep. Our flat transfer rate is 130 EUR total for the car from any of the three airports (20 EUR deposit online, 110 EUR cash to the driver).

Business trip: Linate, no discussion. Door to San Babila in under 40 minutes.

Long-haul arrival: Malpensa, and take the train unless you land after 23:00.

Onward to the lakes: Malpensa for Maggiore, Bergamo for Iseo and eastern Como, Linate if you are transiting Milan anyway.

The variable nobody prices in: your arrival time

Every airport in Milan is easy at 15:00 and awkward at 00:30. Before you book, check three things:

  1. Last train or bus from your airport that night.
  2. Your accommodation's check-in cut-off. Ours runs 13:30 to 01:00, which is unusually late for Milan; many apartments stop at 20:00.
  3. Whether you can drop luggage before the room is ready. We hold bags for our guests at 5 EUR per bag per day.

Get those three right and any of the three airports works.

Related reading

Quick answers

Staying with us at Enjoy Milano Skyline (Viale Sondrio 5, 50 m from MM3 Sondrio, 600 m from Milano Centrale)? Ask Marco, our AI concierge, in the chat at the bottom of the page. He can arrange a private airport transfer (130 EUR total: 20 EUR deposit online, 110 EUR cash to the driver), luggage storage for our guests (5 EUR per bag per day) or a table at one of our three partner restaurants (5 EUR service fee, with a discount on the bill).

Plan it in 30 seconds

Need help organizing transfer, luggage storage or restaurant booking? Chat with Marco, our AI concierge — the floating button below opens the chat.

Related guides