The average train between Viterbo and Perugia takes 3h 46m and the fastest train takes 3h. 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 5 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 at Orte and take an average of 3h 46m. The schedules shown below are for the next available departures.


3h 47m • 2 changes


3h 58m • 2 changes


3h 47m • 2 changes


4h • 2 changes


3h 47m • 2 changes


3h 58m • 2 changes


3h 47m • 2 changes


4h • 2 changes


3h 47m • 2 changes


3h 58m • 2 changes


3h 47m • 2 changes


4h • 2 changes


3h 47m • 2 changes


3h 58m • 2 changes


3h 47m • 2 changes


4h • 2 changes
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 46m.
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 and Foligno in around 3h 57m.