Travel Information
Compare train and bus for Milan to Perugia
Omio recommends booking the train as it is the most popular option from Milan to Perugia among Omio's users. If you are prioritising price take the bus with prices starting from $15. For those with little time consider booking a train which can get you there in 5h 2m. 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 bus costs an average of $15, and a train costs an average of $28.
Distance: 226 miles (365 km)
Compare train with
Most popular Train | Bus |
|---|---|
$53 Average price | $46 Average price Cheapest |
5h 32m Average total duration Fastest 5h 2m Onboard + 30m Additional time* | 6h 8m Average total duration 5h 38m 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.
Travel optionsfrom Milan to Perugia
How to get from Milan to Perugia by train, bus or flight.
Our recommendation
The best way to travel from Milan to Perugia is by taking a bus because it’s the best combination of price and speed.
FlixBus8:00 AM5h45Milano, San Donato - Settore B (Viale Giuseppe Impastato)1:45 PMPerugia, Piazza Partigiani$841One-way0 transfers
Cheapest
Regionale 2293 · Regionale 18413 · Regionale Veloce 40816:50 AM11h28Milan Centrale6:18 PMPerugia Università$591One-way2 transfers
Fastest
9961+
Intercity 5997:40 PM3h37Milan Centrale11:17 PMPerugia station$1081One-way1 transfer
Other options
Intercity 5995:40 PM5h37Milan Centrale11:17 PMPerugia station$691One-way0 transfers
Regionale 2293 · Regionale 18413 · Regionale Veloce 40816:50 AM11h36Milan Centrale6:26 PMPerugia station$591One-way2 transfers
9931+
Regionale Veloce 407911:40 AM4h41Milan Centrale4:21 PMPerugia station$931One-way1 transfer
FlixBus7:15 AM6h30Milano, Autostazione Lampugnano1:45 PMPerugia, Piazza Partigiani$841One-way0 transfers
FlixBus5:25 PM6h05Milano, San Donato - Settore B (Viale Giuseppe Impastato)11:30 PMPerugia, Piazza Partigiani$721One-way0 transfers
FlixBus4:40 PM6h50Milano, Autostazione Lampugnano11:30 PMPerugia, Piazza Partigiani$721One-way0 transfers
AZ2021+
Regionale 20659 · Regionale Veloce 47308:00 AM8h58Milan Linate Airport4:58 PMPerugia station$2791One-way2 transfers
AZ2013+
Regionale 20481 · Regionale Veloce 4100 · Regionale Veloce 40777:00 AM7h25Milan Linate Airport2:25 PMPerugia station$2821One-way3 transfers
AZ2013+
Regionale 20659 · Regionale Veloce 47307:00 AM9h58Milan Linate Airport4:58 PMPerugia station$2791One-way2 transfers
Find all the dates and times for this journey by train, bus, flight, and ferry .
Compare prices and tickets Prices for trains, buses and flights
Compare train and bus 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.
Apr 02
Apr 03
Apr 04
Apr 05
Apr 06
Apr 07
Apr 08
Apr 09
Apr 10
Apr 11
Apr 12
Apr 13
Apr 14
Apr 15
Apr 16
Apr 17
Apr 18
Apr 19
Apr 20
Apr 21
Apr 22
More than 1,000 travel companies trust us to sell their tickets all in one place.
FAQs: Travel from Milan to Perugia
Travel to Perugia easily. Whether you want fast, cheap or something entirely different, our travel experts have collected everything you need to know so you can find the best option from Milan to Perugia.

This is compared to other travel options from Milan to Perugia:
A bus is $14 (€11) less than a train for this route with tickets for a train from Milan to Perugia costing on average $28 (€23).
Other travel options to Perugia take longer:
Bus takes on average 4h 14m.
- Around 31 trains per day.
- Around 13 buses per day.
- Around 1 flights per day.
However, we recommend checking specific travel dates for your route between Milan and Perugia as scheduled services by train and bus can vary by season or day of the week.
- Flights mostly depart from Milan Bergamo Orio al Serio Airport and arrive in Perugia San Egidio Airport.
- Trains mostly depart from Milan Centrale and arrive in Perugia station.
- Buses mostly depart from Milano, Autostazione Lampugnano and arrive in Perugia, Piazza Partigiani.
- Travel with Aeroitalia to go to Perugia by flight.
- Travel with FlixBus, BlaBlaCar, Itabus to go to Perugia by bus.
- Travel with Intercity, Regionale, Frecciarossa, Intercity Notte, Italo to go to Perugia by train.
- 1 direct flights per day with Aeroitalia.
- 6 direct buses per day with FlixBus, BlaBlaCar, Itabus.
- 2 direct trains per day with Intercity, Frecciarossa.
Travelling from Milan to Perugia: related information
Here are some other resources that might have the information you need
