The cheapest and fastest trains from Milan to Milan Malpensa Airport
Cheapest price
£9
Average price
£15
Fastest journey
31 m
Average duration
31 m
Trains per day
232
Distance
41 km
The best way to find a cheap train ticket from Milan to Milan Malpensa Airport is to book your journey as far in advance as possible and to avoid travelling at rush hour.
The average ticket from Milan to Milan Malpensa Airport will cost around £15 if you buy it on the day, but you can find cheap train tickets today for only £9.
Of the 232 trains that leave Milan for Milan Malpensa Airport every day 217 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
These direct trains cover the 41 km distance in an average of 31 m but if you time it right, some trains will get you there in just 31 m .
The slowest trains will take 31 m and usually involve a change or two along the way, but you might be able to save a few pennies if you’re on a budget.
Regionale TRENORD 10242+
Regionale TRENORD 8038420:400h52Milan Porta Garibaldi21:32Malpensa Airport T2£91One-way1 change
Regionale 10236+
Regionale TRENORD 8037017:400h52Milan Porta Garibaldi18:32Malpensa Airport T2£91One-way1 change
Regionale 10224+
Regionale TRENORD 8034411:400h52Milan Porta Garibaldi12:32Malpensa Airport T2£91One-way1 change
Regionale TRENORD 10214+
Regionale TRENORD 803226:400h52Milan Porta Garibaldi7:32Malpensa Airport T2£91One-way1 change
Regionale TRENORD 10218+
Regionale TRENORD 803328:400h52Milan Porta Garibaldi9:32Malpensa Airport T2£91One-way1 change
Regionale TRENORD 36718:030h31Milano Bovisa Politecnico18:34Malpensa Airport T1£151One-way0 changes
Regionale TRENORD 33712:030h31Milano Bovisa Politecnico12:34Malpensa Airport T1£151One-way0 changes
Regionale TRENORD 3137:030h31Milano Bovisa Politecnico7:34Malpensa Airport T1£151One-way0 changes
Regionale TRENORD 37719:330h31Milano Bovisa Politecnico20:04Malpensa Airport T1£151One-way0 changes
Regionale TRENORD 34714:030h31Milano Bovisa Politecnico14:34Malpensa Airport T1£151One-way0 changes
Travel Information
Compare train and coach for Milan to Milan Malpensa Airport
Omio recommends booking the train as it is the most popular option from Milan to Milan Malpensa Airport among Omio's users. If you are prioritising price take the coach with prices starting from £4. For those with little time consider booking a train which can get you there in 52m. The ticket price range depends on the travel mode: a coach costs an average of £4, and a train costs an average of £8.
Distance: 41 km
Compare train with
Most popular Train | Coach |
|---|---|
£12 Average Price | £6 Average Price Cheapest |
1h 22m Average total duration Fastest 52m Onboard + 30m Additional time* | 1h 24m Average total duration 54m Onboard + 30m Additional time* |
![]() Most popular train company | ![]() Most popular bus company |
Direct Options | Direct Options |
Live departures
Milan to Milan Malpensa Airport train times
The table below shows live departures for Milan to Milan Malpensa Airport trains for today, Wednesday 15 April. You can also manually refresh the results below to see updated train journeys.
| Provider | Departs | Duration | Arrives | Changes | Tickets |
|---|---|---|---|---|---|
Regionale TRENORD 2978 | 18:55 Milan Centrale | 1h01 | 19:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2978 | 18:55 Milan Centrale | 0h53 | 19:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 385 | 19:03 Milano Bovisa Politecnico | 0h37 | 19:40 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 385 | 19:03 Milano Bovisa Politecnico | 0h31 | 19:34 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2978 | 19:05 Milan Porta Garibaldi | 0h43 | 19:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2978 | 19:05 Milan Porta Garibaldi | 0h51 | 19:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2980 | 19:25 Milan Centrale | 1h01 | 20:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2980 | 19:25 Milan Centrale | 0h53 | 20:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 387 | 19:33 Milano Bovisa Politecnico | 0h31 | 20:04 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 387 | 19:33 Milano Bovisa Politecnico | 0h37 | 20:10 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2980 | 19:35 Milan Porta Garibaldi | 0h51 | 20:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2980 | 19:35 Milan Porta Garibaldi | 0h43 | 20:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 389 | 20:03 Milano Bovisa Politecnico | 0h31 | 20:34 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 389 | 20:03 Milano Bovisa Politecnico | 0h37 | 20:40 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2984 | 20:25 Milan Centrale | 0h53 | 21:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2984 | 20:25 Milan Centrale | 1h01 | 21:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 391 | 20:33 Milano Bovisa Politecnico | 0h36 | 21:09 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2984 | 20:35 Milan Porta Garibaldi | 0h51 | 21:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2984 | 20:35 Milan Porta Garibaldi | 0h43 | 21:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2986 | 20:55 Milan Centrale | 0h53 | 21:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2986 | 20:55 Milan Centrale | 1h01 | 21:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2986 | 21:05 Milan Porta Garibaldi | 0h51 | 21:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2986 | 21:05 Milan Porta Garibaldi | 0h43 | 21:48 Malpensa Airport T1 | 0 changesdirect | |
| Thursday 16 April | |||||
Regionale TRENORD 303 | 2:33 Milano Bovisa Politecnico | 0h37 | 3:10 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 303 | 2:33 Milano Bovisa Politecnico | 0h31 | 3:04 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2914 | 2:55 Milan Centrale | 1h01 | 3:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2914 | 2:55 Milan Centrale | 0h53 | 3:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 305 | 3:03 Milano Bovisa Politecnico | 0h31 | 3:34 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 305 | 3:03 Milano Bovisa Politecnico | 0h37 | 3:40 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2914 | 3:05 Milan Porta Garibaldi | 0h51 | 3:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2914 | 3:05 Milan Porta Garibaldi | 0h43 | 3:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2916 | 3:25 Milan Centrale | 0h53 | 4:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2916 | 3:25 Milan Centrale | 1h01 | 4:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 307 | 3:33 Milano Bovisa Politecnico | 0h37 | 4:10 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 307 | 3:33 Milano Bovisa Politecnico | 0h31 | 4:04 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2916 | 3:35 Milan Porta Garibaldi | 0h43 | 4:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2916 | 3:35 Milan Porta Garibaldi | 0h51 | 4:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2918 | 3:55 Milan Centrale | 1h01 | 4:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2918 | 3:55 Milan Centrale | 0h53 | 4:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 309 | 4:03 Milano Bovisa Politecnico | 0h31 | 4:34 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 309 | 4:03 Milano Bovisa Politecnico | 0h37 | 4:40 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2918 | 4:05 Milan Porta Garibaldi | 0h51 | 4:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2918 | 4:05 Milan Porta Garibaldi | 0h43 | 4:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale 10212+ Regionale TRENORD 80318 | 4:10 Milan Porta Garibaldi | 0h52 | 5:02 Malpensa Airport T2 | 1 change | |
Regionale TRENORD 2920 | 4:25 Milan Centrale | 1h01 | 5:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2920 | 4:25 Milan Centrale | 0h53 | 5:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 311 | 4:33 Milano Bovisa Politecnico | 0h31 | 5:04 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 311 | 4:33 Milano Bovisa Politecnico | 0h37 | 5:10 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2920 | 4:35 Milan Porta Garibaldi | 0h51 | 5:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2920 | 4:35 Milan Porta Garibaldi | 0h43 | 5:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 10214+ Regionale TRENORD 80322 | 4:40 Milan Porta Garibaldi | 0h52 | 5:32 Malpensa Airport T2 | 1 change | |
Regionale TRENORD 2922 | 4:55 Milan Centrale | 1h01 | 5:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2922 | 4:55 Milan Centrale | 0h53 | 5:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 313 | 5:03 Milano Bovisa Politecnico | 0h31 | 5:34 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 313 | 5:03 Milano Bovisa Politecnico | 0h37 | 5:40 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2922 | 5:05 Milan Porta Garibaldi | 0h43 | 5:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2922 | 5:05 Milan Porta Garibaldi | 0h51 | 5:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2924 | 5:25 Milan Centrale | 1h01 | 6:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2924 | 5:25 Milan Centrale | 0h53 | 6:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 315 | 5:33 Milano Bovisa Politecnico | 0h37 | 6:10 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 315 | 5:33 Milano Bovisa Politecnico | 0h31 | 6:04 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2924 | 5:35 Milan Porta Garibaldi | 0h43 | 6:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2924 | 5:35 Milan Porta Garibaldi | 0h51 | 6:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale 10216+ Regionale TRENORD 80326 | 5:40 Milan Porta Garibaldi | 0h52 | 6:32 Malpensa Airport T2 | 1 change | |
Regionale TRENORD 2926 | 5:55 Milan Centrale | 0h53 | 6:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2926 | 5:55 Milan Centrale | 1h01 | 6:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 319 | 6:03 Milano Bovisa Politecnico | 0h37 | 6:40 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 319 | 6:03 Milano Bovisa Politecnico | 0h31 | 6:34 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2926 | 6:05 Milan Porta Garibaldi | 0h51 | 6:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2926 | 6:05 Milan Porta Garibaldi | 0h43 | 6:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2928 | 6:25 Milan Centrale | 1h01 | 7:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2928 | 6:25 Milan Centrale | 0h53 | 7:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 321 | 6:33 Milano Bovisa Politecnico | 0h31 | 7:04 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 321 | 6:33 Milano Bovisa Politecnico | 0h37 | 7:10 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2928 | 6:35 Milan Porta Garibaldi | 0h43 | 7:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2928 | 6:35 Milan Porta Garibaldi | 0h51 | 7:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 10218+ Regionale TRENORD 80332 | 6:40 Milan Porta Garibaldi | 0h52 | 7:32 Malpensa Airport T2 | 1 change | |
Regionale TRENORD 2930 | 6:55 Milan Centrale | 1h01 | 7:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2930 | 6:55 Milan Centrale | 0h53 | 7:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 325 | 7:03 Milano Bovisa Politecnico | 0h37 | 7:40 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 325 | 7:03 Milano Bovisa Politecnico | 0h31 | 7:34 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2930 | 7:05 Milan Porta Garibaldi | 0h43 | 7:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2930 | 7:05 Milan Porta Garibaldi | 0h51 | 7:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2932 | 7:25 Milan Centrale | 1h01 | 8:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2932 | 7:25 Milan Centrale | 0h53 | 8:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 327 | 7:33 Milano Bovisa Politecnico | 0h37 | 8:10 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 327 | 7:33 Milano Bovisa Politecnico | 0h31 | 8:04 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2932 | 7:35 Milan Porta Garibaldi | 0h43 | 8:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2932 | 7:35 Milan Porta Garibaldi | 0h51 | 8:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 10220+ Regionale TRENORD 80336 | 7:40 Milan Porta Garibaldi | 0h52 | 8:32 Malpensa Airport T2 | 1 change | |
Regionale TRENORD 2934 | 7:55 Milan Centrale | 0h53 | 8:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2934 | 7:55 Milan Centrale | 1h01 | 8:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 329 | 8:03 Milano Bovisa Politecnico | 0h37 | 8:40 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 329 | 8:03 Milano Bovisa Politecnico | 0h31 | 8:34 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2934 | 8:05 Milan Porta Garibaldi | 0h51 | 8:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2934 | 8:05 Milan Porta Garibaldi | 0h43 | 8:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2936 | 8:25 Milan Centrale | 0h53 | 9:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2936 | 8:25 Milan Centrale | 1h01 | 9:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 331 | 8:33 Milano Bovisa Politecnico | 0h31 | 9:04 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 331 | 8:33 Milano Bovisa Politecnico | 0h37 | 9:10 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2936 | 8:35 Milan Porta Garibaldi | 0h43 | 9:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2936 | 8:35 Milan Porta Garibaldi | 0h51 | 9:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2938 | 8:55 Milan Centrale | 0h53 | 9:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2938 | 8:55 Milan Centrale | 1h01 | 9:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 333 | 9:03 Milano Bovisa Politecnico | 0h31 | 9:34 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 333 | 9:03 Milano Bovisa Politecnico | 0h37 | 9:40 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2938 | 9:05 Milan Porta Garibaldi | 0h51 | 9:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2938 | 9:05 Milan Porta Garibaldi | 0h43 | 9:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2940 | 9:25 Milan Centrale | 0h53 | 10:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2940 | 9:25 Milan Centrale | 1h01 | 10:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 335 | 9:33 Milano Bovisa Politecnico | 0h37 | 10:10 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 335 | 9:33 Milano Bovisa Politecnico | 0h31 | 10:04 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2940 | 9:35 Milan Porta Garibaldi | 0h51 | 10:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2940 | 9:35 Milan Porta Garibaldi | 0h43 | 10:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale 10224+ Regionale TRENORD 80344 | 9:40 Milan Porta Garibaldi | 0h52 | 10:32 Malpensa Airport T2 | 1 change | |
Regionale TRENORD 2942 | 9:55 Milan Centrale | 1h01 | 10:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2942 | 9:55 Milan Centrale | 0h53 | 10:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 337 | 10:03 Milano Bovisa Politecnico | 0h31 | 10:34 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 337 | 10:03 Milano Bovisa Politecnico | 0h37 | 10:40 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2942 | 10:05 Milan Porta Garibaldi | 0h43 | 10:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2942 | 10:05 Milan Porta Garibaldi | 0h51 | 10:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2944 | 10:25 Milan Centrale | 0h53 | 11:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2944 | 10:25 Milan Centrale | 1h01 | 11:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 339 | 10:33 Milano Bovisa Politecnico | 0h31 | 11:04 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 339 | 10:33 Milano Bovisa Politecnico | 0h37 | 11:10 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2944 | 10:35 Milan Porta Garibaldi | 0h51 | 11:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2944 | 10:35 Milan Porta Garibaldi | 0h43 | 11:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 10226+ Regionale TRENORD 80348 | 10:40 Milan Porta Garibaldi | 0h52 | 11:32 Malpensa Airport T2 | 1 change | |
Regionale TRENORD 2946 | 10:55 Milan Centrale | 0h53 | 11:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2946 | 10:55 Milan Centrale | 1h01 | 11:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 343 | 11:03 Milano Bovisa Politecnico | 0h37 | 11:40 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 343 | 11:03 Milano Bovisa Politecnico | 0h31 | 11:34 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2946 | 11:05 Milan Porta Garibaldi | 0h43 | 11:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2946 | 11:05 Milan Porta Garibaldi | 0h51 | 11:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2948 | 11:25 Milan Centrale | 1h01 | 12:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2948 | 11:25 Milan Centrale | 0h53 | 12:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 345 | 11:33 Milano Bovisa Politecnico | 0h37 | 12:10 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 345 | 11:33 Milano Bovisa Politecnico | 0h31 | 12:04 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2948 | 11:35 Milan Porta Garibaldi | 0h43 | 12:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2948 | 11:35 Milan Porta Garibaldi | 0h51 | 12:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale 10228+ Regionale TRENORD 80352 | 11:40 Milan Porta Garibaldi | 0h52 | 12:32 Malpensa Airport T2 | 1 change | |
Regionale TRENORD 2950 | 11:55 Milan Centrale | 1h01 | 12:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2950 | 11:55 Milan Centrale | 0h53 | 12:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 347 | 12:03 Milano Bovisa Politecnico | 0h31 | 12:34 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 347 | 12:03 Milano Bovisa Politecnico | 0h37 | 12:40 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2950 | 12:05 Milan Porta Garibaldi | 0h43 | 12:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2950 | 12:05 Milan Porta Garibaldi | 0h51 | 12:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2952 | 12:25 Milan Centrale | 1h01 | 13:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2952 | 12:25 Milan Centrale | 0h53 | 13:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 349 | 12:33 Milano Bovisa Politecnico | 0h37 | 13:10 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 349 | 12:33 Milano Bovisa Politecnico | 0h31 | 13:04 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2952 | 12:35 Milan Porta Garibaldi | 0h51 | 13:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2952 | 12:35 Milan Porta Garibaldi | 0h43 | 13:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 10230+ Regionale TRENORD 80356 | 12:40 Milan Porta Garibaldi | 0h52 | 13:32 Malpensa Airport T2 | 1 change | |
Regionale TRENORD 2954 | 12:55 Milan Centrale | 0h53 | 13:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2954 | 12:55 Milan Centrale | 1h01 | 13:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 351 | 13:03 Milano Bovisa Politecnico | 0h37 | 13:40 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 351 | 13:03 Milano Bovisa Politecnico | 0h31 | 13:34 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2954 | 13:05 Milan Porta Garibaldi | 0h43 | 13:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2954 | 13:05 Milan Porta Garibaldi | 0h51 | 13:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2956 | 13:25 Milan Centrale | 1h01 | 14:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2956 | 13:25 Milan Centrale | 0h53 | 14:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 353 | 13:33 Milano Bovisa Politecnico | 0h31 | 14:04 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 353 | 13:33 Milano Bovisa Politecnico | 0h37 | 14:10 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2956 | 13:35 Milan Porta Garibaldi | 0h51 | 14:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2956 | 13:35 Milan Porta Garibaldi | 0h43 | 14:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale 10232+ Regionale TRENORD 80360 | 13:40 Milan Porta Garibaldi | 0h52 | 14:32 Malpensa Airport T2 | 1 change | |
Regionale TRENORD 2958 | 13:55 Milan Centrale | 1h01 | 14:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2958 | 13:55 Milan Centrale | 0h53 | 14:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 355 | 14:03 Milano Bovisa Politecnico | 0h37 | 14:40 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 355 | 14:03 Milano Bovisa Politecnico | 0h31 | 14:34 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2958 | 14:05 Milan Porta Garibaldi | 0h51 | 14:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2958 | 14:05 Milan Porta Garibaldi | 0h43 | 14:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2960 | 14:25 Milan Centrale | 1h01 | 15:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2960 | 14:25 Milan Centrale | 0h53 | 15:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 357 | 14:33 Milano Bovisa Politecnico | 0h37 | 15:10 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 357 | 14:33 Milano Bovisa Politecnico | 0h31 | 15:04 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2960 | 14:35 Milan Porta Garibaldi | 0h43 | 15:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2960 | 14:35 Milan Porta Garibaldi | 0h51 | 15:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 10234+ Regionale TRENORD 80366 | 14:40 Milan Porta Garibaldi | 0h52 | 15:32 Malpensa Airport T2 | 1 change | |
Regionale TRENORD 2962 | 14:55 Milan Centrale | 1h01 | 15:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2962 | 14:55 Milan Centrale | 0h53 | 15:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 361 | 15:03 Milano Bovisa Politecnico | 0h31 | 15:34 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 361 | 15:03 Milano Bovisa Politecnico | 0h37 | 15:40 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2962 | 15:05 Milan Porta Garibaldi | 0h51 | 15:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2962 | 15:05 Milan Porta Garibaldi | 0h43 | 15:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2964 | 15:25 Milan Centrale | 1h01 | 16:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2964 | 15:25 Milan Centrale | 0h53 | 16:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 365 | 15:33 Milano Bovisa Politecnico | 0h37 | 16:10 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 365 | 15:33 Milano Bovisa Politecnico | 0h31 | 16:04 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2964 | 15:35 Milan Porta Garibaldi | 0h51 | 16:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2964 | 15:35 Milan Porta Garibaldi | 0h43 | 16:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale 10236+ Regionale TRENORD 80370 | 15:40 Milan Porta Garibaldi | 0h52 | 16:32 Malpensa Airport T2 | 1 change | |
Regionale TRENORD 2966 | 15:55 Milan Centrale | 1h01 | 16:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2966 | 15:55 Milan Centrale | 0h53 | 16:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 367 | 16:03 Milano Bovisa Politecnico | 0h31 | 16:34 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 367 | 16:03 Milano Bovisa Politecnico | 0h37 | 16:40 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2966 | 16:05 Milan Porta Garibaldi | 0h43 | 16:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2966 | 16:05 Milan Porta Garibaldi | 0h51 | 16:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2968 | 16:25 Milan Centrale | 1h01 | 17:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2968 | 16:25 Milan Centrale | 0h53 | 17:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 371 | 16:33 Milano Bovisa Politecnico | 0h31 | 17:04 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 371 | 16:33 Milano Bovisa Politecnico | 0h37 | 17:10 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2968 | 16:35 Milan Porta Garibaldi | 0h43 | 17:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2968 | 16:35 Milan Porta Garibaldi | 0h51 | 17:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 10238+ Regionale TRENORD 80376 | 16:40 Milan Porta Garibaldi | 0h52 | 17:32 Malpensa Airport T2 | 1 change | |
Regionale TRENORD 2970 | 16:55 Milan Centrale | 1h01 | 17:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2970 | 16:55 Milan Centrale | 0h53 | 17:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 375 | 17:03 Milano Bovisa Politecnico | 0h31 | 17:34 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 375 | 17:03 Milano Bovisa Politecnico | 0h37 | 17:40 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2970 | 17:05 Milan Porta Garibaldi | 0h43 | 17:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2970 | 17:05 Milan Porta Garibaldi | 0h51 | 17:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2972 | 17:25 Milan Centrale | 0h53 | 18:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2972 | 17:25 Milan Centrale | 1h01 | 18:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 377 | 17:33 Milano Bovisa Politecnico | 0h31 | 18:04 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 377 | 17:33 Milano Bovisa Politecnico | 0h37 | 18:10 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2972 | 17:35 Milan Porta Garibaldi | 0h51 | 18:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2972 | 17:35 Milan Porta Garibaldi | 0h43 | 18:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale 10240+ Regionale TRENORD 80380 | 17:40 Milan Porta Garibaldi | 0h52 | 18:32 Malpensa Airport T2 | 1 change | |
Regionale TRENORD 2974 | 17:55 Milan Centrale | 0h53 | 18:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2974 | 17:55 Milan Centrale | 1h01 | 18:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 379 | 18:03 Milano Bovisa Politecnico | 0h37 | 18:40 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 379 | 18:03 Milano Bovisa Politecnico | 0h31 | 18:34 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2974 | 18:05 Milan Porta Garibaldi | 0h51 | 18:56 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2974 | 18:05 Milan Porta Garibaldi | 0h43 | 18:48 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2976 | 18:25 Milan Centrale | 0h53 | 19:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2976 | 18:25 Milan Centrale | 1h01 | 19:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 383 | 18:33 Milano Bovisa Politecnico | 0h31 | 19:04 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 383 | 18:33 Milano Bovisa Politecnico | 0h37 | 19:10 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 2976 | 18:35 Milan Porta Garibaldi | 0h43 | 19:18 Malpensa Airport T1 | 0 changesdirect | |
Regionale TRENORD 2976 | 18:35 Milan Porta Garibaldi | 0h51 | 19:26 Malpensa Airport T2 | 0 changesdirect | |
Regionale TRENORD 10242+ Regionale TRENORD 80384 | 18:40 Milan Porta Garibaldi | 0h52 | 19:32 Malpensa Airport T2 | 1 change | |
This is the last train of the day. | |||||
Find all the dates and times for this journey
Compare prices and tickets Milan to Milan Malpensa Airport by train or coach
Compare train and coach prices over the next three weeks. See the best deals at a glance, find the lowest fares, and choose the option that fits your budget.
16 Apr
17 Apr
18 Apr
19 Apr
20 Apr
21 Apr
22 Apr
23 Apr
24 Apr
25 Apr
26 Apr
27 Apr
28 Apr
29 Apr
30 Apr
01 May
02 May
03 May
04 May
05 May
06 May
Why should you book Milan to Milan Malpensa Airport trains with Omio?
Why book with Omio vs Malpensa Express?
- Compare with other providers: On Omio, you can not only buy tickets for Malpensa Express, but also compare tickets for the likes of Regionale or Trenord to find the best option for your trip from Milan to Milan Malpensa Airport.
- Designed for International Travelers: Omio is in your language including 24/7 customer service and offers multiple payment options, including PayPal, credit cards, and bank transfer, in your preferred currency.
- Compare all your options: Omio allows you to compare Malpensa Express with all available travel options, which are train and bus to ensure you get the best deal for traveling from Milan to Milan Malpensa Airport.
Why book with Omio over Rome2rio, Trainline or Raileurope?
- Multiple modes of transport: Omio allows you to compare travel options including train and bus to find the ideal travel option from Milan to Milan Malpensa Airport.
Journey information
Overview: Train from Milan to Milan Malpensa Airport
Trains from Milan to Milan Malpensa Airport run on average 143 times per day, taking around 52m. Cheap train tickets for this journey start at £8 but you can travel from only £4 by coach.
There are 141 trains per day. The earliest train runs at 03:33, the last at 22:33. The fastest train covers the 41 km distance in 31m.
Distance 41 km |
Average train duration 52m |
Cheapest ticket price £8 |
Trains per day 143 |
Direct trains 141 |
Fastest train 31m |
First train 3:33 |
Last train 22:33 |
Cheapest Month May |
Cheapest Day Fri |
High Season Apr - Jun |
Low Season Jan - Mar |
Busiest Day Mon |
Least Busy Day Thu |
Train companies: Malpensa Express, Regionale, Trenord from Milan to Milan Malpensa Airport trainsMalpensa Express, Regionale, Trenord trains will get you between Milan and Milan Malpensa Airport from £4. With over 1000 travel companies on Omio, you can find the best train times and tickets for your trip.
Regionale
Malpensa Express
Trenord
FAQs: Milan to Milan Malpensa Airport train
Find answers to the most common questions about traveling from Milan to Milan Malpensa Airport by train. From journey times and ticket prices to direct connections, first and last departures, and even whether the route is scenic, our FAQs cover everything you need to plan your trip. Whether you’re looking for the fastest train, the cheapest option, or tips for making the most of your visit at Milan Malpensa Airport, this guide helps you travel smarter and with confidence.

More options for your journey from Milan to Milan Malpensa Airport
Here are some other resources that might have the information you need

