The average train between Bergamo and Perugia takes 6h 56m and the fastest train takes 6h 19m. The train service runs several times per day from Bergamo 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.
Trains run 3 times a day between Bergamo and Perugia. The earliest departure is at 7:58 AM in the morning, and the last departure from Bergamo is at 10:56 PM which arrives into Perugia at 10:17 AM. All services require a transfer at Milano Centrale and take an average of 6h 56m. The schedules shown below are for the next available departures.


6h 27m • 2 changes


6h 23m • 2 changes


6h 28m • 2 changes


6h 23m • 2 changes


6h 27m • 2 changes


6h 23m • 2 changes


6h 28m • 2 changes


6h 23m • 2 changes


6h 27m • 2 changes


6h 23m • 2 changes


6h 28m • 2 changes


6h 25m • 2 changes
Want to know about travelling from Bergamo 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.
No, there is no direct train from Bergamo to Perugia. However, there are services departing from Bergamo station and arriving at Perugia station via Milano Centrale. The journey, including transfers, takes approximately 6h 56m.
Bergamo to Perugia train services, operated by Trenord, depart from Bergamo station.
Bergamo to Perugia train services, operated by Trenord, arrive at Perugia station.
Book your Bergamo to Perugia train tickets online with Trenord, Trenitalia Frecce and 2 other operators.
The distance between Bergamo and Perugia is 359.5 km. The road distance is 508 km.
You can take a train from Bergamo to Perugia via Milano Centrale and Firenze S.M.N. in around 6h 3m.