The cheapest and fastest buses from Milan to Perugia
Cheapest price
$26
Average price
$56
Fastest journey
4 h 14 m
Average duration
5 h 9 m
Buses per day
17
Distance
365 km
The best way to find a cheap bus ticket from Milan to Perugia is to book your journey as far in advance as possible and to avoid traveling at rush hour.
The average ticket from Milan to Perugia will cost around $56 if you buy it on the day, but the cheapest tickets can be found for only $26.
Of the 17 buses that leave Milan for Perugia on Thu, Feb 05, 10 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
On Thu, Feb 05 the direct buses cover the 365 km distance in an average of 5 h 9 m but if you time it right, some buses will get you there in just 4 h 14 m .
On Thu, Feb 05 the slowest buses will take 5 h 45 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.
3825
FlixBus · FlixBus
FlixBus
FlixBus
FlixBus
FRECCIAROSSA 9519+
FRECCIALINK LK005
FRECCIAROSSA 9519+
FRECCIALINK LK005+
Regionale Veloce 4076
8111+
FRECCIAROSSA 9519+
FRECCIALINK LK005
FlixBusTravel Information
Compare bus and train 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 €12. 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 €12, and a train costs an average of €23.
Distance: 226 miles (365 km)
Compare bus with
| Bus | Most popular Train |
|---|---|
€39 Average price Cheapest | €43 Average price |
6h 13m Average total duration 5h 43m Onboard + 30m Additional time* | 5h 32m Average total duration Fastest 5h 2m Onboard + 30m Additional time* |
0.4 - 0.9kg CO2 emissions | 0.1 - 0.3kg CO2 emissions Lowest |
![]() Most popular bus company | ![]() Most popular train company |
Direct Options | Direct Options |
Additional time: Average total travel duration to departure point, security checks and transfers.
Milan to Perugia Bus Timetables
| Operator | Departure Time | Arrival Time | Duration | Departure days | Cheapest price |
|---|---|---|---|---|---|
Operator Itabus | Departure Time 12:30AM | Arrival Time 06:25AM | Duration 5h55 | Departure days Everyday | Cheapest price $24 |
Operator Italo | Departure Time 05:40AM | Arrival Time 12:24PM | Duration 6h44 | Departure days Everyday | Cheapest price $75 |
Operator BlaBlaCar | Departure Time 06:00AM | Arrival Time 11:00AM | Duration 5h00 | Departure days Wed | Cheapest price $34 |
Operator Italo | Departure Time 06:40AM | Arrival Time 12:24PM | Duration 5h44 | Departure days Everyday | Cheapest price $80 |
Operator FlixBus | Departure Time 07:15AM | Arrival Time 01:45PM | Duration 6h30 | Departure days Mon, Thu, Fri, Sat, Sun | Cheapest price $31 |
Operator FlixBus | Departure Time 08:00AM | Arrival Time 03:45PM | Duration 7h45 | Departure days Mon, Thu, Fri, Sat, Sun | Cheapest price $24 |
Operator Frecciarossa | Departure Time 08:10AM | Arrival Time 12:24PM | Duration 4h14 | Departure days Everyday | Cheapest price $69 |
Operator FlixBus | Departure Time 09:55AM | Arrival Time 06:05PM | Duration 8h10 | Departure days Mon, Thu, Sat, Sun | Cheapest price $29 |
Operator FlixBus | Departure Time 10:00AM | Arrival Time 06:05PM | Duration 8h05 | Departure days Sun | Cheapest price $29 |
Operator FlixBus | Departure Time 11:00AM | Arrival Time 07:15PM | Duration 8h15 | Departure days Mon, Fri, Sat, Sun | Cheapest price $25 |
Operator FlixBus | Departure Time 12:30PM | Arrival Time 07:15PM | Duration 6h45 | Departure days Thu, Fri, Sat, Sun | Cheapest price $25 |
Operator FlixBus | Departure Time 12:40PM | Arrival Time 08:15PM | Duration 7h35 | Departure days Mon, Thu, Fri, Sat, Sun | Cheapest price $29 |
Operator FlixBus | Departure Time 12:45PM | Arrival Time 08:30PM | Duration 7h45 | Departure days Mon, Fri | Cheapest price $23 |
Operator Itabus | Departure Time 01:00PM | Arrival Time 01:05AM | Duration 12h05 | Departure days Sun | Cheapest price $25 |
Operator Itabus | Departure Time 01:25PM | Arrival Time 01:05AM | Duration 11h40 | Departure days Sun | Cheapest price $25 |
Operator BlaBlaCar | Departure Time 02:20PM | Arrival Time 07:10PM | Duration 4h50 | Departure days Sat | Cheapest price $55 |
Operator BlaBlaCar | Departure Time 02:40PM | Arrival Time 07:00PM | Duration 4h20 | Departure days Fri | Cheapest price $52 |
Operator BlaBlaCar | Departure Time 04:00PM | Arrival Time 08:40PM | Duration 4h40 | Departure days Wed | Cheapest price $50 |
Operator FlixBus | Departure Time 04:40PM | Arrival Time 11:30PM | Duration 6h50 | Departure days Tue, Wed, Thu, Fri, Sat, Sun | Cheapest price $29 |
Operator BlaBlaCar | Departure Time 05:00PM | Arrival Time 09:30PM | Duration 4h30 | Departure days Thu | Cheapest price $50 |
Operator FlixBus | Departure Time 05:25PM | Arrival Time 11:30PM | Duration 6h05 | Departure days Tue, Wed, Thu, Fri, Sat, Sun | Cheapest price $29 |
Operator BlaBlaCar | Departure Time 06:00PM | Arrival Time 10:40PM | Duration 4h40 | Departure days Sun | Cheapest price $48 |
Operator BlaBlaCar | Departure Time 07:00PM | Arrival Time 11:40PM | Duration 4h40 | Departure days Fri | Cheapest price $42 |
Operator FlixBus | Departure Time 11:05PM | Arrival Time 06:10AM | Duration 7h05 | Departure days Everyday | Cheapest price $30 |
Operator Itabus | Departure Time 11:45PM | Arrival Time 06:25AM | Duration 6h40 | Departure days Everyday | Cheapest price $24 |
Operator FlixBus | Departure Time 11:50PM | Arrival Time 06:10AM | Duration 6h20 | Departure days Everyday | Cheapest price $30 |
Live departures
Milan to Perugia bus times
The table below shows live departures for Milan to Perugia buses for today, Wednesday, February 4. You can also manually refresh the results below to see updated bus journeys.
| Provider | Departs | Duration | Arrives | Transfers | Tickets |
|---|---|---|---|---|---|
FlixBus | 3:40 PM Milano, Autostazione Lampugnano | 6h50 | 10:30 PM Perugia, Piazza Partigiani | 0 transfersDirect | |
FlixBus | 4:25 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 6h05 | 10:30 PM Perugia, Piazza Partigiani | 0 transfersDirect | |
FlixBus | 10:05 PM Milano, Autostazione Lampugnano | 7h05 | 5:10 AM Perugia, Piazza Partigiani | 0 transfersDirect | |
3825 | 10:45 PM Milano, Autostazione Lampugnano | 6h40 | 5:25 AM Perugia, Piazza Vittorio Veneto (fronte Stazione FS) | 0 transfersDirect | |
FlixBus | 10:50 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 6h20 | 5:10 AM Perugia, Piazza Partigiani | 0 transfersDirect | |
3825 | 11:30 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 5h55 | 5:25 AM Perugia, Piazza Vittorio Veneto (fronte Stazione FS) | 0 transfersDirect | |
| Thursday, February 5 | |||||
9907+ FRECCIAROSSA 9519+ FRECCIALINK LK005 | On time 4:40 AM Milan Centrale | 6h44 | 11:24 AM Perugia station | 2 transfers | |
8111+ FRECCIAROSSA 9519+ FRECCIALINK LK005 | 5:40 AM Milan Centrale | 5h44 | 11:24 AM Perugia station | 2 transfers | |
FlixBus | 6:15 AM Milano, Autostazione Lampugnano | 6h30 | 12:45 PM Perugia, Piazza Partigiani | 0 transfersDirect | |
FlixBus | 7:00 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 5h45 | 12:45 PM Perugia, Piazza Partigiani | 0 transfersDirect | |
FlixBus · FlixBus | 7:00 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 7h45 | 2:45 PM Perugia, Viale Giovanni Perari (Parcheggio) | 1 transfer | |
FRECCIAROSSA 9519+ FRECCIALINK LK005+ Regionale Veloce 4076 | 7:10 AM Milan Centrale | 5h33 | 12:43 PM Perugia Università | 2 transfers | |
FRECCIAROSSA 9519+ FRECCIALINK LK005 | 7:10 AM Milan Centrale | 4h14 | 11:24 AM Perugia station | 1 transfer | |
FlixBus · FlixBus | 8:55 AM Milano, Autostazione Lampugnano | 8h10 | 5:05 PM Perugia, Piazza Partigiani | 1 transfer | |
FlixBus · FlixBus | 11:30 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 6h45 | 6:15 PM Perugia, Piazza Partigiani | 1 transfer | |
FlixBus | 11:40 AM Milano, Autostazione Lampugnano | 7h35 | 7:15 PM Perugia, Piazza Partigiani | 0 transfersDirect | |
This is the last bus of the day. | |||||
Find all the dates and times for this journey
Compare prices and tickets Milan to Perugia by bus or train
Compare bus and train 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.
Feb 04
Feb 05
Feb 06
Feb 07
Feb 08
Feb 09
Feb 10
Feb 11
Feb 12
Feb 13
Feb 14
Feb 15
Feb 16
Feb 17
Feb 18
Feb 19
Feb 20
Feb 21
Feb 22
Feb 23
Feb 24
Why should you book Milan to Perugia buses with Omio?
Why book with Omio vs FlixBus?
- Compare with other providers: On Omio, you can not only buy tickets for FlixBus, but also compare tickets for the likes of Itabus to find the best option for your trip from Milan to Perugia.
- 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 FlixBus with all available travel options, which are bus and train to ensure you get the best deal for traveling from Milan to Perugia.
Why book with Omio over Wanderu or Checkmybus?
- Compare with other providers: On Omio, you can also compare tickets for the likes of Itabus to find the best option for your trip from Milan to Perugia.
- Multiple modes of transport: Omio allows you to compare travel options including bus and train to find the ideal travel option from Milan to Perugia.
Journey information
Overview: Bus from Milan to Perugia
Buses from Milan to Perugia run on average 13 times per day, taking around 5h 43m. Cheap bus tickets for this journey start at $15 (€12) if you book in advance.
There are 5 buses per day. The earliest bus runs at 00:20, the last at 23:50. The fastest bus covers the 226 miles (365 km) distance in 4h 14m.
Distance 226 miles (365 km) |
Average bus duration 5h 43m |
Cheapest ticket price $15 (€12) |
Buses per day 13 |
Direct buses 5 |
Fastest bus 4h 14m |
First bus 00:20 |
Last bus 23:50 |
Bus providers: FlixBus, BlaBlaCar, Itabus from Milan to PerugiaYou can travel by bus between Milan to Perugia with FlixBus, BlaBlaCar, Itabus for as low as $15 (€12). When you search for schedules and tickets, Omio will show you the best journey
FlixBus
Itabus
BlaBlaCar
FAQs: Bus from Milan to Perugia
Find answers to the most common questions about traveling from Milan to Perugia by bus. 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 bus, the cheapest option, or tips for making the most of your visit at Perugia, this guide helps you travel smarter and with confidence.

- FlixBus
- Assistance
- Priority boarding
- Wheelchair-accessible buses.
- Itabus
- Assistance
- Dedicated seating areas
- Accessible restrooms.
- Rocca Paolina, a historic fortress offering underground passages and exhibitions
- Fontana Maggiore, a medieval fountain adorned with intricate sculptures in the city center
- Galleria Nazionale dell'Umbria, an art museum housing works from the Middle Ages to the Renaissance
- Perugia Cathedral, a Gothic-style cathedral with impressive frescoes and architecture
- Piazza IV Novembre, a central square known for its vibrant atmosphere and historical significance.
- Perugina Chocolate Factory, a must-visit for chocolate lovers to explore the history and production of the famous Baci chocolates
- Corso Vannucci, the main street of Perugia, perfect for a leisurely stroll and shopping
- Etruscan Well, an ancient well offering a glimpse into the engineering prowess of the Etruscans
- National Archaeological Museum of Umbria, showcasing artifacts from prehistoric to Roman times
- Giardini Carducci, a beautiful garden offering stunning views of the surrounding countryside.
- FlixBus
- You can cancel your ticket up to 15 minutes before departure and receive a voucher for future travel. Refund requests for delays over 120 minutes are possible.
- Itabus
- You can cancel your ticket up to 24 hours before departure for a partial refund. Changes allowed for a fee.
- FlixBus
- One carry-on bag up to 7kg (42x30x18 cm) and one checked bag up to 20kg (80x50x30 cm).
- Itabus
- One carry-on bag up to 10kg and one checked bag up to 20kg.
- FlixBus
- Additional luggage can be purchased for a fee.
- Itabus
- 5€ per additional bag.
- FlixBus
- Small pets in carriers allowed
- guide dogs travel for free.
- Itabus
- Small pets allowed in carriers
- larger pets must be leashed and muzzled.
popular bus stations
Popular bus stations from Milan to Perugia
- 06:00-23:00
- Free Wi-Fi
- Cafeteria Lampugnano (in the station)
- Trattoria Milano (0.5 km)
- Pizza Express (0.7 km).
- Available outside the station.
- Elevators, ramps
- Available in the station.
- Metro: M1 Bus: 68, 78, 80
- 06:00-22:00
- Free Wi-Fi
- Cafeteria Italiana (in the station)
- Fast Food Express (in the station)
- Trattoria Milano (0.5 km).
- Available outside the station.
- Elevators, ramps
- Available in the station.
- Bus: 121, 132 Metro: M3
More options for your journey from Milan to Perugia
Here are some other resources that might have the information you need

