Milan has three airports. Malpensa (MXP) is the big one, 50 km north-west, mostly long-haul and legacy carriers. Linate (LIN) is small and 8 km east, mostly domestic and short-haul. Bergamo-Orio al Serio (BGY) is 50 km north-east — it’s actually in Bergamo, not Milan, and Ryanair runs the bulk of it. A pre-booked chauffeur to central Milan: €119 from MXP, €69 from LIN, €129 from BGY.
Milan is the European city where booking the wrong transfer hurts the most. A Ryanair fare to “Milan” might land you in Bergamo, an hour from the Duomo. A Lufthansa connection through MXP at 11pm on a Sunday meets a taxi queue that I’ve personally watched stretch past 50 minutes. The three-airport reality of Milan rewards travellers who plan and punishes those who don’t.
MXP: the proper international airport
Malpensa is 50 km north-west of Milan in Varese province. Two terminals: T1 handles long-haul and the bigger European carriers; T2 is essentially Ryanair’s old hub (now also some easyJet). They are 5 km apart, connected by a free shuttle bus that runs every 7 minutes.
The drive to central Milan is 50 minutes in clear traffic, often 75–90 in rush hour. The A8 autostrada is the main route and it’s reliable in winter (Milan rarely gets serious snow disruption) but congested.
MXP to central Milan, every option
| Option | Time | Cost | Verdict |
|---|---|---|---|
| Malpensa Express train | 43 min to Cadorna, 50 min to Centrale | €13–€20 | Reliable, twice an hour, good for solo |
| Bus (Malpensa Shuttle, Terravision) | 60–80 min | €10–€12 | Cheapest, slow |
| Milan taxi (fixed rate) | 50–90 min | €110 fixed | Decent, but queue can be long |
| Uber Black | 50–90 min | €140–€220 | Premium only, expensive |
| Pre-booked chauffeur (E-Class) | 50–90 min | €119 all-in | Best for groups, late nights, hotels off the metro |
The Malpensa Express is the right choice for solo travellers staying near Cadorna or Centrale. €13 if you buy ahead, €20 walk-up. Trains run twice an hour, 43 minutes to Cadorna or 50 minutes to Centrale. The trains have luggage racks but they’re modest.
Milan taxis have a €110 fixed rate to central Milan from MXP — better than the metered alternative but not amazing value. Queues at peak can be 30+ minutes. Uber Black starts at €140 and goes up sharply during peak. The chauffeur at €119 sits in a tight middle: more than the train, similar to a fixed-rate taxi, with the meet & greet and flight tracking added.
LIN: small, close, and often the right answer
Linate is 8 km east of central Milan. Single terminal, manageable size, the airport you actually want for a Milan trip when you have the choice. Most flights here are domestic Italian or short-haul European. The British Airways London City service runs here. ITA Airways has a hub function here.
The drive to central Milan is 20–30 minutes. The metro M4 line opened a station at Linate Airport in 2022, connecting directly to the city centre in 12 minutes for €2.20. This is a recent change and one of the better airport-link transit decisions in Europe — most online guides still haven’t updated.
LIN to central Milan
- Metro M4 (blue line) — €2.20, 12 minutes to Sant’Ambrogio in the city centre. The best Milan airport public transit option.
- Air Bus — €7, 25 minutes to Centrale. Useful if you’re heading to Centrale specifically.
- City bus 73 — €2.20, 30+ minutes, gets crowded. Save for backup.
- Milan taxi — €40–€55 metered, no fixed rate. Reasonable for the short distance.
- Pre-booked chauffeur — €69 in an E-Class. The cheapest of our Milan transfers because it’s a short drive.
Honest take: for solo travellers landing at LIN, the M4 metro is brilliant. Don’t book a chauffeur. We’ll happily take the booking but the metro at 12 minutes for €2.20 is genuinely better than what we offer for short Linate runs. For families and groups, the chauffeur math improves because the M4 only takes you to one point in the city — beyond that, you’re on trams or walking.
BGY: it’s actually in Bergamo
Orio al Serio is 50 km north-east of Milan, in the Bergamo metropolitan area. The marketing name “Milan Bergamo Airport” is technically accurate (the airport authority is licensed under Milan) but operationally misleading. If you land at BGY, you are not in Milan.
The drive to central Milan is 55–75 minutes via the A4 autostrada. Bus services to Milan Centrale run every 20–30 minutes (€10, 60–75 minutes). No direct train.
BGY options
- Bus to Milan Centrale — €10, 60–75 minutes. Frequent, the standard budget option.
- Bus to central Bergamo — €2.40, 15 minutes. Useful if Bergamo is actually your destination.
- Pre-booked chauffeur to Milan — €129 in an E-Class. The pricing matches MXP roughly because the distance is similar.
- Pre-booked chauffeur to Bergamo old town — €69. Worth it for the historic city.
- Taxi to Milan — €120–€160 metered. Hard to find at off-peak times.
The Ryanair pattern at BGY: you buy a cheap flight, you assume the transfer is also cheap, you arrive at 23:00 and the last bus to Milan has either gone or is about to go. We get late-night BGY emergency bookings most weekends in summer.
“The single biggest planning mistake I see at Milan: someone books a €19 Ryanair flight to BGY thinking it’s Milan, doesn’t notice the airport code, then realises at landing they need a €129 chauffeur or an hour-plus bus journey. Always check the IATA code before booking a ‘cheap’ Milan flight.”
Marta Kowalska, European Routes Specialist
Fashion Week, Salone del Mobile, EICMA: the trade-fair calendar matters
Milan’s calendar is dense with major events that wreck the transfer math the same way Frankfurt does. The big ones:
- Fashion Week (February and September, both menswear and womenswear) — 8-day periods where every Milan hotel is sold out and the fleet is reserved 8+ weeks ahead.
- Salone del Mobile (mid-April) — design week, possibly the highest hotel-rate spike of the year. Bookings 12 weeks ahead are normal.
- EICMA (early November) — international motorcycle show, focused on Fiera Milano (the Rho fairgrounds). MXP transfers to Rho are €119 direct.
- Champions League football nights — when Inter or Milan plays at home, traffic and taxi availability deteriorate sharply around San Siro and the centre.
If you’re attending any of these, book transfers at the same time you book hotels. The fleet operating in Milan during Salone del Mobile is fully reserved by mid-February.
Onward routes from Milan airports
- MXP → Lake Como (Como, Bellagio, Tremezzo) — 80 km. €169 to Como, €229 to Bellagio. Honeymoon and luxury leisure clients book this constantly.
- MXP → Verona — 160 km, 2 hours. €329. Train from Centrale is faster (1 hour) but the airport-direct chauffeur skips the transfer to Centrale.
- MXP → Lake Garda (Sirmione, Riva del Garda) — 145 km. €299 to Sirmione, €389 to Riva.
- MXP → Cinque Terre (La Spezia) — 270 km, 3.5 hours. €529. We do this for cruise embarkations and walking-tour groups.
- MXP → Cortina d’Ampezzo (ski) — 470 km, 5 hours. €879. The ski clients heading to Cortina prefer the chauffeur because the alternative (train to Calalzo plus shuttle) is a full day.
- MXP → Saint-Moritz — 220 km cross-border into Switzerland. €629. The Bernina pass route in summer is one of the great drives in Europe.
Five things to check before booking Milan
- Which airport? MXP, LIN, or BGY. The IATA code on your ticket is definitive. “Milan” alone tells you nothing.
- What’s the actual distance from your hotel to the metro? If LIN, the M4 is excellent — but only if your destination is on or close to the line.
- Are you arriving during Fashion Week or Salone del Mobile? If yes, book at least 6 weeks ahead.
- Is your hotel near Fiera Milano (Rho)? Direct chauffeur from MXP to Rho is €119 and skips the city traffic entirely.
- Continuing to a lake or the Alps? Plan the onward leg at booking time — fleet availability for combined routes is tighter than single-airport bookings.
Full details: Milan airport transfer (MXP · LIN · BGY). For the wider Milan service including hourly bookings and Quadrilatero della Moda transfers: Milan chauffeur service. Common onward routes go to Zurich, Rome and Innsbruck.
Frequently Asked Questions
-
Linate (LIN) is closest to central Milan at 8 km, with a metro link (M4) that reaches the centre in 12 minutes. Use LIN if your airline offers it. Malpensa (MXP) handles most long-haul and is 50 km away. Bergamo (BGY) is actually in Bergamo province, 50 km from Milan — only fly here if your Ryanair fare is significantly cheaper.
-
Milan licensed taxis charge a fixed €110 flat rate from Malpensa to within central Milan. The rate is regulated and applies at all hours. The taxi rank at MXP is at the Arrivals exit; queues at peak times (Sunday evening, weekday morning long-haul arrivals) can reach 30+ minutes.
-
For solo travellers and couples with light luggage going to hotels near Cadorna or Centrale stations, yes — €13 (advance) and 43–50 minutes. For families, large groups, or hotels not near these stations, the chauffeur or fixed-rate taxi work out better when you factor in the second-leg transfer cost and effort.
-
Yes, the Milan M4 (blue line) opened a Linate Airport station in October 2022. The line connects directly to Sant'Ambrogio in central Milan in 12 minutes for €2.20. It's one of the best European airport metro links and most online guides still describe LIN as bus-only. Update: it isn't.
-
The standard option is the bus to Milan Centrale (€10, 60–75 minutes) which runs every 20–30 minutes during operating hours. There's no direct train. For arrivals after 22:30 the bus schedule thins out. A pre-booked chauffeur is €129 in an E-Class.
-
Yes, this is one of our most common onward routes. MXP to Como city is €169 in an E-Class, MXP to Bellagio is €229. The drive avoids central Milan entirely via the A8/A9 autostradas. Most lake clients book the airport-to-hotel direct rather than transferring through Milan.
-
Twice a year — February (menswear/womenswear) and September (mainly womenswear). Each runs 8 days. Hotel rates triple and our Milan fleet is reserved 6–8 weeks ahead. For Fashion Week clients, book transfers when you book the hotel, not after.
Book your airport transfer
Milan Airport Transfer
MXP · LIN · BGY
Meet & greet at MXP · flight tracking · 60-min free wait · Mercedes fleet.
Rome Airport Transfer
FCO · CIA
Meet & greet at FCO · flight tracking · 60-min free wait · Mercedes fleet.
Innsbruck Airport Transfer
INN
Meet & greet at INN · flight tracking · 60-min free wait · Mercedes fleet.
Zurich Airport Transfer
ZRH
Meet & greet at ZRH · flight tracking · 60-min free wait · Mercedes fleet.
Need a chauffeur in any of these cities?
Milan
Italy
24/7 Mercedes chauffeur · meet & greet at every airport · fixed quote in minutes.
Rome
Italy
24/7 Mercedes chauffeur · meet & greet at every airport · fixed quote in minutes.
Innsbruck
Austria
24/7 Mercedes chauffeur · meet & greet at every airport · fixed quote in minutes.
Zurich
Switzerland
24/7 Mercedes chauffeur · meet & greet at every airport · fixed quote in minutes.