The average bus between Milan and Perugia takes 6h 5m and the fastest bus takes 5h 45m. The bus service runs several times per day from Milan to Perugia. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Buses run 3 times a day between Milan and Perugia. The earliest departure is at 8:00 AM in the morning, and the last departure from Milan is at 11:50 PM which arrives into Perugia at 6:10 AM. All services run direct with no transfers required, and take on average 6h 5m. The schedules shown below are for the next available departures.
Arrives next day
Arrives next day
Arrives next day
Want to know about travelling from Milan to Perugia? We have put together a list of the most frequently asked questions from our users such as: What is the cheapest mode of transport? What is the quickest option? How much do tickets usually cost? and many more.
Yes, there is a direct bus departing from Milan station and arriving at Perugia station. Services depart 3 times a day, and operate Once daily. The journey takes approximately 6h 5m.
Milan to Perugia bus services, operated by FlixBus, depart from Milano, San Donato M3 station.
Milan to Perugia bus services, operated by FlixBus, arrive at Perugia station.
Book your Milan to Perugia bus tickets online with FlixBus.
The distance between Milan and Perugia is 365 km. The road distance is 453 km.
FlixBus operates a bus from Milano, San Donato M3 to Perugia 3 times a day. Tickets cost €30–55 and the journey takes 6h 20m.