Milan has three good-sized international airports, although one of them is much more commonly used if you’re flying in from overseas. Malpensa Airport is Italy’s second-largest but runs neck-in-neck with the country’s biggest airport (Rome’s Fiumicino Airport) in terms of international traffic. Like Fiumicino, Malpensa has located quite a distance from the city center – roughly 50km. So your first order of business after arriving is going to be getting from Malpensa to Milan.
As I’ve noted in the past, Milan shouldn’t necessarily be on every tourist’s to-do list, but since it’s such a major international gateway into the country you might be flying into Malpensa even if your itinerary doesn’t include Milan’s sights at all. If that’s the case, you may be able to bypass going into Milan’s city center by taking a bus that skirts the city and deposits passengers at several different cities. But before you go for that option, remember to check that against the travel time for going into Milan and taking the train to your final destination. It could be faster to do it that way, depending on where you’re going.
No matter where you are planning to end up, you do have several options for how to get from Malpensa Airport to Milan.
>> And if you need to spend the night near the airport before an early flight or after a late one, these are the Malpensa Airport hotels that are closest to the airport.
Getting from Milan Malpensa Airport to Milan
Taking the Train from Malpensa Airport to Milan
Milan has an express train that connects Malpensa Airport’s Terminal 1 with central Milan called, cleverly, the Malpensa Express. It used to only have one stop in the city center, but as of late 2010, there are two major stations (and even one smaller station) in the city center that you can get to directly from the Malpensa Express.
The Malpensa Express takes between 40-50 minutes from end to end, depending which station you’re going to and how many of the mid-point stops that particular train includes on its route, and trains operate nearly around the clock (there’s a small break from about 01:30 until 05:30 when trains aren’t running from the airport) seven days a week.
Tickets for the Malpensa Express are €13 for a one-way trip to Cadorna Station or Centrale Station. If you’ll be making a return trip via the same train, you can get a round-trip ticket to/from Cadorna or Centrale for €20. Whatever ticket you have, don’t forget to validate your ticket before you climb on board the train.
Ticket kiosks at Malpensa are staffed with people who, in my experience, speak enough English to sell you the ticket you’ll need – but they’re not open 24/7. The kiosks are open from 05:30 until 00:20 on weekdays, with shorter hours on the weekends and holidays. If you miss out on the kiosk being open, or you prefer dealing with machines, there’s an automated ticket machine just before you walk down the ramp to the train platform.
Also, note that while there are two stations in central Milan you can get to from Malpensa, they’re not on the same route. This means you’ve got to pay special attention to which train you get on at the airport. If you pick the wrong one, the worst thing is that you have to then take the Metro to the train station you really need to be in. It’s not the end of the world, but it’s an avoidable hassle.
>> Read more about taking the Malpensa Express into Milan.
DOWNLOAD OUR TRAVEL GUIDES
There’s one other train option to get from Malpensa into Milan, and that’s on regular old Trenitalia. These normal Italian trains run between Gallarate Station and Milan’s Centrale station. Gallarate is a short bus ride from Malpensa, so you’ll need to get a bus from the airport (either Terminal 1 or Terminal 2) before you can hop on the train. Buses leave Malpensa regularly between the hours 06:05 and 20:15, and a bus ticket will cost roughly €1-2 depending on which terminal you pick it up from. There’s also a free shuttle running between the terminals, so if you want to save every Italian penny then get on the shuttle to the cheaper pick-up point.
After you’ve reached Gallarate on the bus, you’ll need to get on the Domodossola-Milano train line headed in the direction of Milano Centrale. Trains bound for Centrale run between the hours of 05:54 and 23:24. The trip takes a little over an hour if you get on one that requires a train change, or roughly 40 minutes if you get on a train that takes you straight to Centrale. So double-check that you’re on one that doesn’t require a train change! A ticket will cost €3-5, depending on the length of the journey.
Taking the Bus from Malpensa Airport to Milan
There are a bazillion buses which connect Malpensa Airport with various points around Italy (and even beyond Italy). Okay, I’m exaggerating. But only a little. There really are (at my count) nearly 20 bus routes which include Malpensa. So getting away from the airport by bus isn’t a problem at all.
From Malpensa Airport, you can reach the following cities directly by bus: Turin, Genoa, Como, Brescia, Bergamo, Verona, and Lugano (in Switzerland) – among others. But even just to get from Malpensa to Milan’s city center by bus you’ve got a couple options.
The Malpensa Shuttle leaves from Terminal 1 2-3 times each hour from about 05:00 until nearly midnight – and there are a few departures between midnight and 05:00 – so most of the day and night you shouldn’t have to wait for more than a half-hour for a bus. It’ll take you directly to Stazione Centrale (with a couple intermediate stops if they’re requested), making it easy for you to get on a train from Milan to wherever, and it’s about a 50-minute trip (depending on traffic). A ticket is €10.
The Malpensa Shuttle Air Pullman also picks up at Terminal 1 and drops off at Stazione Centrale, and it’s also about a 50-minute journey. There are a few more intermediate stops on this route, also by request, and a ticket is €10 one-way (you can get a round-trip ticket for €16 if you know you’ll be making the other half of the trip). Buses leave Malpensa about every 20 minutes or so between the hours of 05:30 and 01:00.
There’s also a bus replacement for the Malpensa Express if it’s not running, and a few buses that will get you from Malpensa to Milan’s other airport, Linate.
>> Read more about how to get to/from Malpensa Airport by bus, including options for cities other than Milan.
Taking a Taxi from Malpensa Airport to Milan
Because Malpensa is so far from Milan’s city center, you’re looking at an expensive taxi fare. Even though there’s a fixed fare to and from the heart of the city, that fare is a whopping €90. And heaven forbid you to fly into Malpensa and need to get to Milan’s other airport, Linate, because that fixed fare is €100. Granted, these fares are “all-inclusive,” meaning taxi drivers aren’t allowed to add on extra charges for things like luggage, but even without extra fees that’s still not a cheap trip.
If you’re traveling with a group and can split the fare, that may be a good option for you, but if you want to save a bit on the transport from the airport without feeling like you’ve got to drag your luggage onto the crowded Milan Metro, you can take the Malpensa Express train (see details above) to either Centrale station or Cadorna station in the city center and get a taxi from there to wherever you need to go. Both stations have a fleet of taxis nearby during the day, so it’s easy to get a cab when you leave the station.
If you’re still determined to get a taxi at Malpensa, you’ll find them outside Terminal 1 (Arrivals) near gates 4 and 5.
Now that you’re in Milan…
Be sure to check out my Milan travel guide, with links to most of what I’ve written about the city – including tips on what to see and where to eat when you’re there.
Need a place to stay that won’t break the bank? Here’s a list of some of the budget hotels in Milan.
Getting around is easy when you use the Metro, and that’s a snap once you’ve read my Milan Metro guide.
If you’re pressed for time, I’ve got my suggestions for the top 10 things to do in Milan.
[display_feed=https://www.italylogue.com/tag/malpensa/feed;title=Other articles about Malpensa Airport;items=10;desc=0]