The average train between Viterbo and Perugia takes 3h 22m and the fastest train takes 3h 3m. The train service runs several times per day from Viterbo 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 4 times a day between Viterbo and Perugia. The earliest departure is at 6:50 AM in the morning, and the last departure from Viterbo is at 6:23 PM which arrives into Perugia at 10:24 PM. All services require a transfer, and take on average 3h 22m. The schedules shown below are for the next available departures.

3h 29m • 1 change

3h 30m • 1 change

3h 3m • 1 change

3h 6m • 1 change

3h 29m • 1 change

3h 30m • 1 change

3h 3m • 1 change

3h 6m • 1 change

3h 29m • 1 change

3h 30m • 1 change

3h 3m • 1 change

3h 6m • 1 change

3h 29m • 1 change

3h 30m • 1 change

3h 3m • 1 change

3h 6m • 1 change

3h 29m • 1 change

3h 30m • 1 change

3h 3m • 1 change

3h 6m • 1 change
Want to know about travelling from Viterbo 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 Viterbo to Perugia. However, there are services departing from Viterbo station and arriving at Perugia station via Orte. The journey, including transfers, takes approximately 3h 22m.
Viterbo to Perugia train services, operated by Trenitalia, depart from Viterbo P.Fiorentina station.
Viterbo to Perugia train services, operated by Trenitalia, arrive at Perugia station.
Book your Viterbo to Perugia train tickets online with Trenitalia and Trenitalia Intercity.
The distance between Viterbo and Perugia is 80.4 km. The road distance is 174 km.
You can take a train from Viterbo P.Fiorentina to Perugia via Orte in around 3h 46m.