How to travel from Perugia to Milan

Fri, Jun 19
+ Add return
Travel by train, bus with
FlixBus
Intercity
Aeroitalia
Regionale
Frecciarossa
1,000+ more
FlixBus
Intercity
Aeroitalia
Regionale
Frecciarossa
1,000+ more
QR-Code
Scan to get our free app
Use our app to get live travel updates and book mobile tickets for trains, buses, flights, and ferries.
App Store
rate4.9
42K ratings
Google Play
rate4.6
136K reviews

Travel Information

Compare train and bus 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 bus with prices starting from $13. For those with little time consider booking a train which can get you there in 4h 49m. 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 $13, and a train costs an average of $33.

Distance: 226 miles (365 km)

Compare train with

Most popular
Train
Bus
Driving

$53

Average price

$35

Average price

Cheapest

$130

Average price

(fuel + tolls)

5h 19m

Average total duration

Fastest

4h 49m

Onboard

+

30m

Additional time*

5h 59m

Average total duration

5h 29m

Onboard

+

30m

Additional time*

5h 38m

Average total duration

(door-to-door)

0.1 - 0.3kg

CO2 emissions

Lowest

0.4 - 0.9kg

CO2 emissions

-

CO2 emissions

Intercity

Most popular train company

FlixBus

Most popular bus company

Your own car or car rental

Direct Options

Direct Options

Direct Options

Additional time: Average total travel duration to departure point, security checks and transfers.

The cheapest way to travel from Perugia to Milan is a bus with an average price of $35 (€29).

This is compared to other travel options from Perugia to Milan:

A bus is $18 (€15) less than a train for this route with tickets for a train from Perugia to Milan costing on average $53 (€44).

The fastest way to travel from Perugia to Milan is by flight with an average journey time of 55m.

Other travel options to Milan take longer:

Train takes on average 4h 49m.

Bus takes on average 5h 29m.

It's helpful to compare your options as there are 2 ways to travel between Perugia and Milan including taking a train and bus.
We recommend using the train as it is the most popular way to get from Perugia to Milan among Omio's users.

Travel options
from Perugia to Milan

How to get from Perugia to Milan by train, bus or flight.

Our recommendation

bus

The best way to travel from Perugia to Milan is by taking a bus because it’s the best combination of price and speed.

  • Itabus1120 · 2400
    4:00 PM7h05
    Perugia, Via Cortonese (Fontivegge)
    11:05 PMMilano, San Donato - Settore B (Viale Giuseppe Impastato)
    $281One-way
    1 transfer

Cheapest

  • Itabus1120 · 2400
    4:00 PM7h05
    Perugia, Via Cortonese (Fontivegge)
    11:05 PMMilano, San Donato - Settore B (Viale Giuseppe Impastato)
    $281One-way
    1 transfer

Fastest

  • FrecciarossaFRECCIAROSSA 9300+Italo9904
    5:24 AM3h45
    Perugia station
    9:09 AMMilan Rogoredo
    $1101One-way
    1 transfer

Other options

  • RegionaleRegionale Veloce 4076 · Regionale 18522 · Regionale 2296
    1:44 PM9h38
    Perugia Università
    11:22 PMMilan Centrale
    $521One-way
    2 transfers
  • RegionaleRegionale Veloce 4076 · Regionale 18522 · Regionale 2296
    1:41 PM9h41
    Perugia station
    11:22 PMMilan Centrale
    $521One-way
    2 transfers
  • RegionaleRegionale Veloce 4082+IntercityIntercity 596
    5:47 PM5h30
    Perugia Università
    11:17 PMMilan Centrale
    $641One-way
    1 transfer
  • FlixBusFlixBus
    11:25 AM7h55
    Perugia, Piazza Partigiani
    7:20 PMMilano, Autostazione Lampugnano
    $371One-way
    0 transfers
  • Itabus3826
    1:10 AM5h55
    Perugia, Via Cortonese (Fontivegge)
    7:05 AMMilano, San Donato - Settore B (Viale Giuseppe Impastato)
    $371One-way
    0 transfers
  • Itabus3826
    1:10 AM6h40
    Perugia, Via Cortonese (Fontivegge)
    7:50 AMMilano, Autostazione Lampugnano
    $371One-way
    0 transfers
  • RegionaleRegionale Veloce 4731 · Regionale Veloce 4105 · Regionale 20503+ITAAZ2130
    1:47 PM9h23
    Perugia station
    11:10 PMMilan Linate Airport
    $1631One-way
    3 transfers
  • RegionaleRegionale Veloce 4733 · Regionale 20535+ITAAZ2130
    3:55 PM7h15
    Perugia station
    11:10 PMMilan Linate Airport
    $1651One-way
    2 transfers
  • RegionaleRegionale Veloce 4077 · Regionale Veloce 4155 · Regionale 20517+ITAAZ2130
    2:27 PM8h43
    Perugia station
    11:10 PMMilan Linate Airport
    $1651One-way
    3 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.

Fri
Jun 19
Sat
Jun 20
Sun
Jun 21
Mon
Jun 22
Tue
Jun 23
Wed
Jun 24
Thu
Jun 25
Fri
Jun 26
Sat
Jun 27
Sun
Jun 28
Mon
Jun 29
Tue
Jun 30
Wed
Jul 01
Thu
Jul 02
Fri
Jul 03
Sat
Jul 04
Sun
Jul 05
Mon
Jul 06
Tue
Jul 07
Wed
Jul 08
Thu
Jul 09

More than 1,000 travel companies trust us to sell their tickets all in one place.

Trenitalia
Easyjet
Deutsche Bahn
SNCF

FAQs: Travel from Perugia to Milan

Travel to Milan 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 Perugia to Milan.

FAQs
There are 2 options to travel between Perugia and Milan including taking a train and bus.
The cheapest way to travel from Perugia to Milan is a bus with an average price of $35 (€29).

This is compared to other travel options from Perugia to Milan:

A bus is $18 (€15) less than a train for this route with tickets for a train from Perugia to Milan costing on average $53 (€44).

The fastest way to travel from Perugia to Milan is by flight with an average journey time of 55m.

Other travel options to Milan take longer:

Train takes on average 4h 49m.

Bus takes on average 5h 29m.

The distance from Perugia to Milan is approximately 226 miles (365 km).
The average frequency per day from Perugia to Milan is:
  • Around 38 trains per day.
  • Around 17 buses per day.

However, we recommend checking specific travel dates for your route between Perugia and Milan as scheduled services by train and bus can vary by season or day of the week.

These are the most popular departure and arrival points from Perugia to Milan:
  • Trains mostly depart from Perugia station and arrive in Milan Centrale.
  • Buses mostly depart from Perugia, Piazza Partigiani and arrive in Milano, Autostazione Lampugnano.
If finding a good deal is your main consideration for your trip from Perugia to Milan, then we'll help you find the best value travel companies for you:
  • Travel with Aeroitalia to go to Milan by flight.
  • Travel with FlixBus, Itabus, BlaBlaCar to go to Milan by bus.
  • Travel with Intercity, Regionale, Frecciarossa, Italo, Intercity Notte to go to Milan by train.
Yes, there are direct services available from Perugia to Milan with the following travel companies:
  • 0 direct flights per day with Aeroitalia.
  • 6 direct buses per day with FlixBus, Itabus, BlaBlaCar.
  • 1 direct trains per day with Intercity, Frecciarossa.
Omio customers who travel from Perugia to Milan often also extend their vacation to go to Paris, Rome, Venice, Como, Florence. Omio can help you plan your trip by finding the best connections between Milan and these popular destinations at a great price.
HomeTravelTravel to ItalyTravel to MilanHow to travel from Perugia to Milan

The Omio App Makes Travel Planning Easy

We’ll get you where you want to go. From live train updates to mobile tickets, our innovative app is the ideal way to plan and keep track of your travel.

ios-badge
android-badge
Hand With Phone