Journey information
Overview: Perugia to Milan flight
Take a flight from Perugia to Milan and enjoy the approximately 365 km long journey. Find schedules and pricing options for a convenient and affordable trip.
There are 1 flights per day. The earliest flight runs at 05:20, the last at 18:40. October is the cheapest month to fly.
Distance 365 km |
Average flight duration 55m |
Flights per day 1 |
Direct flights 1 |
Cheapest month to travel October |
First flight 05:20 |
Last flight 18:40 |
The cheapest and fastest flights from Perugia to Milan
Cheapest price
£102
Average price
£181
Fastest journey
7 h 11 m
Average duration
7 h 22 m
Flights per day
25
Distance
365 km
The best way to find a cheap flight ticket from Perugia to Milan is to book your journey as far in advance as possible and to avoid travelling at rush hour.
The average ticket from Perugia to Milan will cost around £181 if you buy it on the day, but you can find cheap flight tickets today for only £102.
To travel from Perugia to Milan you need to make at least 2 changes.
Regionale Veloce 4721 · Regionale 20423+
XZ2023
Regionale Veloce 4073 · Regionale Veloce 4153 · Regionale 20475+
XZ2023
Regionale 4949 · Regionale Veloce 4945 · Regionale 20453+
XZ2023
Intercity 531+
Regionale 20423+
XZ2023
Regionale 4949+
Intercity 533+
Regionale 20447+
XZ2023
Regionale Veloce 4073 · Regionale Veloce 4153 · Regionale 20475+
XZ2023
Regionale Veloce 4073 · Regionale Veloce 4153+
Leonardo express 4624+
XZ2023
Regionale Veloce 4733 · Regionale 20535+
AZ2130
Regionale Veloce 4733+
Leonardo express 5042+
AZ2130
Regionale Veloce 4077 · Regionale Veloce 4155 · Regionale 20517+
XZ2025Travel Information
Compare train and coach for Perugia to Milan
Omio recommends booking the train as it is the most popular option from Perugia to Milan among Omio's users. If you are prioritising price take the coach with prices starting from £21. For those with little time consider booking a train which can get you there in 4h 51m. In case you are seeking to minimise your carbon footprint the train is your best bet as it emits only 0.1 - 0.3kg. The ticket price range depends on the travel mode: a coach costs an average of £21, and a train costs an average of £34.
Distance: 365 km
Compare train with
Most popular Train | Coach |
|---|---|
£41 Average Price | £38 Average Price Cheapest |
5h 21m Average total duration Fastest 4h 51m Onboard + 30m Additional time* | 5h 51m Average total duration 5h 21m Onboard + 30m Additional time* |
0.1 - 0.3kg CO2 emissions Lowest | 0.4 - 0.9kg CO2 emissions |
![]() Most popular train company | ![]() Most popular bus company |
Direct Options | Direct Options |
Additional time: Average total travel duration to departure point, security checks and transfers.
Live departures
Perugia to Milan flight times
The table below shows live departures for Perugia to Milan flights for today, Monday 1 December. You can also manually refresh the results below to see updated flight journeys.
| Provider | Departs | Duration | Arrives | Changes | Tickets |
|---|---|---|---|---|---|
FRECCIAROSSA 9300 · FRECCIAROSSA 1000 9503+ Leonardo express 4590+ AZ2044 | 04:24 Perugia station | 10h46 | 15:10 Milan Linate Airport | 3 changes | |
FRECCIAROSSA 9300 · FRECCIAROSSA 1000 9503+ Leonardo express 4590+ XZ2023 | 04:24 Perugia station | 12h06 | 16:30 Milan Malpensa Airport | 3 changes | |
FRECCIAROSSA 9300 · FRECCIAROSSA 1000 9503+ Leonardo express 4590+ AZ2092 | 04:24 Perugia station | 12h46 | 17:10 Milan Linate Airport | 3 changes | |
Regionale Veloce 4721 · Regionale 20423+ XZ2023 | 04:52 Perugia station | 11h38 | 16:30 Milan Malpensa Airport | 2 changes | |
Regionale Veloce 4721 · Regionale 20423+ AZ2092 | 04:52 Perugia station | 12h18 | 17:10 Milan Linate Airport | 2 changes | |
Regionale Veloce 4721 · Regionale 20423+ AZ2044 | 04:52 Perugia station | 10h18 | 15:10 Milan Linate Airport | 2 changes | |
Intercity 531+ Regionale 20423+ AZ2092 | 05:40 Perugia station | 11h30 | 17:10 Milan Linate Airport | 2 changes | |
Intercity 531+ Regionale 20423+ AZ2044 | 05:40 Perugia station | 9h30 | 15:10 Milan Linate Airport | 2 changes | |
Intercity 531+ Regionale 20423+ XZ2023 | 05:40 Perugia station | 10h50 | 16:30 Milan Malpensa Airport | 2 changes | |
Regionale 4949 · Regionale Veloce 4945 · Regionale 20453+ AZ2092 | 05:52 Perugia station | 11h18 | 17:10 Milan Linate Airport | 3 changes | |
Regionale 4949+ Intercity 533+ Regionale 20447+ XZ2023 | 05:52 Perugia station | 10h38 | 16:30 Milan Malpensa Airport | 3 changes | |
Regionale 4949 · Regionale Veloce 4945 · Regionale 20453+ XZ2023 | 05:52 Perugia station | 10h38 | 16:30 Milan Malpensa Airport | 3 changes | |
Regionale Veloce 4073 · Regionale Veloce 4153 · Regionale 20475+ XZ2023 | 09:19 Perugia station | 7h11 | 16:30 Milan Malpensa Airport | 3 changes | |
Regionale Veloce 4073 · Regionale Veloce 4153+ Leonardo express 4624+ XZ2023 | 09:19 Perugia station | 7h11 | 16:30 Milan Malpensa Airport | 3 changes | |
Regionale Veloce 4073 · Regionale Veloce 4153 · Regionale 20475+ XZ2025 | 09:19 Perugia station | 12h06 | 21:25 Milan Malpensa Airport | 3 changes | |
Regionale Veloce 4725+ Leonardo express 4634+ XZ2025 | 10:48 Perugia station | 10h37 | 21:25 Milan Malpensa Airport | 2 changes | |
Regionale Veloce 4725 · Regionale 20489+ AZ2056 | 10:48 Perugia station | 8h22 | 19:10 Milan Linate Airport | 2 changes | |
Regionale Veloce 4725 · Regionale 20489+ XZ2025 | 10:48 Perugia station | 10h37 | 21:25 Milan Malpensa Airport | 2 changes | |
Regionale Veloce 4731 · Regionale Veloce 4105 · Regionale 20503+ XZ2025 | 12:47 Perugia station | 8h38 | 21:25 Milan Malpensa Airport | 3 changes | |
Regionale Veloce 4731+ Leonardo express 4660+ XZ2025 | 12:47 Perugia station | 8h38 | 21:25 Milan Malpensa Airport | 2 changes | |
Regionale Veloce 4731 · Regionale 20527+ XZ2025 | 12:47 Perugia station | 8h38 | 21:25 Milan Malpensa Airport | 2 changes | |
Regionale Veloce 4077 · Regionale Veloce 4155 · Regionale 20517+ AZ2130 | 13:27 Perugia station | 8h43 | 22:10 Milan Linate Airport | 3 changes | |
Regionale Veloce 4077 · Regionale Veloce 4155 · Regionale 20517+ XZ2025 | 13:27 Perugia station | 7h58 | 21:25 Milan Malpensa Airport | 3 changes | |
Regionale Veloce 4733 · Regionale 20535+ AZ2130 | 14:55 Perugia station | 7h15 | 22:10 Milan Linate Airport | 2 changes | |
Regionale Veloce 4733+ Leonardo express 5042+ AZ2130 | 14:55 Perugia station | 7h15 | 22:10 Milan Linate Airport | 2 changes | |
Find all the dates and times for this journey
Compare prices and tickets Perugia to Milan 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.
02 Dec
03 Dec
04 Dec
05 Dec
06 Dec
07 Dec
08 Dec
09 Dec
10 Dec
11 Dec
12 Dec
13 Dec
14 Dec
15 Dec
16 Dec
17 Dec
18 Dec
19 Dec
20 Dec
21 Dec
22 Dec
Airlines: Aeroitalia from Perugia to MilanFind the best flights between Perugia to Milan with Omio's travel partners Aeroitalia from £21. We can find you the best deals, schedules and tickets when comparing and booking the best trip.
Aeroitalia
FAQs: Perugia to Milan flights
Find answers to the most common questions about traveling from Perugia to Milan by flight. 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 flight, the cheapest option, or tips for making the most of your visit at Milan, this guide helps you travel smarter and with confidence.

Flights from Perugia to Milan generally leave from Perugia San Egidio Airport and arrive in Milan Bergamo Orio al Serio Airport.
Perugia San Egidio Airport is 15.6 km away from Perugia city centre and Milan Bergamo Orio al Serio Airport is 52.2 km from Milan city centre.
Typically, passengers are allowed one carry-on bag and one personal item (for example a purse, laptop bag, or backpack). Personal items must fit under the seat in front of you.
Budget Airlines (like Ryanair or Wizz Air) have stricter size and weight limits, often requiring fees for larger carry-ons. Full-Service Airlines have more lenient policies, sometimes including more spacious dimensions or higher weight limits depending on your ticket class.
popular airports
Important Stations and Airports in Perugia and Milan
- Free Wi-Fi available throughout the airport.
- A few shops available, including a duty-free shop.
- Parking available near the terminal, approximately 2€ per hour.
- Available outside the terminal.
- Ramps, toilets.
- Available throughout the airport.
- Located in the main terminal.
- Bus: E007, E422
- Free Wi-Fi available throughout the airport.
- Shops available, including duty-free and fashion stores, located in the departures area.
- Parking available near the terminal, approximately 3€ per hour.
- Available outside the terminal.
- Elevators, ramps.
- Available throughout the airport.
- Yes
- Lounge available, with access for a fee or membership.
- Located in the arrivals area.
- Bus: Line 1, Line 5
- Train: NA
- Metro: NA
- Free Wi-Fi available throughout the airport.
- Shops available, including Duty-Free and WHSmith, located in the departures area.
- Parking available in P1, P2, and P3 lots, approximately 2.5€ per hour.
- Available outside the terminal.
- Ramps, assistance.
- Available throughout the airport.
- Yes
- Lounge available, Sala Leonardo Lounge, access with membership or fee.
- Located in the arrivals area, near baggage claim.
- Bus 73
- Bus X73
More options for your journey from Perugia to Milan
Here are some other resources that might have the information you need


