How to travel from Viterbo to Milan, Italy

The distance between Viterbo and Milan is around 511km (317 miles) and the quickest way to get there is to take the train and then fly which takes around 3h 35m.

9 routes found

We've found 9 different ways to get from Viterbo to Milan by train, bus, car and plane. The recommended routes, which include information on duration, ticket price, and level of difficulty, can be found below.

👋 Also check out MilanViterbo if you're planning a return trip.

🚀 Fastest
1
train
+
plane
+

Train and Plane

Take the train to Roma Trastevere then fly from Rome (FCO) to Milan Linate (LIN).

  • Duration3h 35m
  • Flight time1h 10m
  • Typical cost
    €82($82)
Operated by

Multiple operators

3 similiar routes

We’ve grouped similar routes together, click the arrows to see the other options.

2
3 x train
+

Train

Take the train to Orte then Reggio Emilia Av and then to Milano Rogoredo.

  • Duration4hrs
  • Departsonce daily
  • Typical cost
    €47($47)

1 similiar route

We’ve grouped similar routes together, click the arrows to see the other options.

💰 Cheapest
3
3 x bus
+

Bus

Take the bus to Piancastagnaio then Firenze Autostazione and then to Milan.

  • Duration8h 40m
  • Departstwice a week
  • Typical cost
    €39($39)
Operated by

Multiple bus operators

4
bus
+
train
+

Bus and Train

Take the bus to Rome Saxa Rubra then take the train to Milano Rogoredo.

  • Duration5h 40m
  • Departsonce daily
  • Typical cost
    €51($51)
Operated by

Multiple operators

5
car
+

Drive

Drive to Milan.

  • Duration4h 45m
  • Distance511km (317 miles)
Get turn-by-turn directions

Frequently asked questionsabout travel between Viterbo and Milan

There are several options for getting from Viterbo to Milan by train, bus, car and plane. The cheapest option is to take the bus which costs around €39 ($39) and will take around 8h 40m. If you need to get there more quickly, you can take the train and then fly and arrive in approximately 3h 35m, though it is a bit more costly at approximately €82 ($82).

The distance between Viterbo and Milan is around 511km (317 miles). In a direct line (as the crow flies), the distance is 411km (256 miles)

It takes around 4hrs to get from Viterbo and Milan by train. If you are travelling by car it will take around 4h 45m to drive there.

The quickest way to get from Viterbo to Milan is to take the train and then fly which takes around 3h 35m and will set you back approx €82 ($82).

The cheapest way to travel between Viterbo and Milan, if you exclude driving, is to take the bus which will typically cost around €39 ($39) for a standard one-way ticket.

Train travel

Yes there is a train service that runs between Viterbo and Milan. It typically takes around 4hrs and departs once daily.

There are no direct train services that runs from Viterbo to Milan. However, you can instead can take several connecting trains with a changeover in Orte, Reggio Emilia Av and Milano Rogoredo. These services run once daily and will take a minimum of 4hrs.

Trenitalia and ItaloTreno run train services between Viterbo and Milan. Trains depart once daily and will take around 4hrs, however, this may vary depending on the particular service and whether it runs express or stops all stations.

Bus travel

Yes there is a bus that runs regularly from Viterbo and Milan. It typically takes around 8h 40m and departs twice a week.

There are no direct bus services that runs from Viterbo to Milan. However, you can instead can take several connecting buses with changeovers in Piancastagnaio, Firenze Autostazione, Florence and Milan. These services run twice a week and will take a minimum of 8h 40m.

Cotral, Tiemme Spa and FlixBus run regular bus services between Viterbo and Milan. Buses run twice a week and take around 8h 40m on average but will vary depending on you book with.

Flights and Airlines

It doesn't look like you can fly directly from Viterbo to Milan. We recommend that you take the train to Roma Trastevere then fly from Rome (FCO) to Milan Linate (LIN). instead which will take 3h 35m.

The closest major airport to Milan is Linate Airport (LIN) (LIN) which is approximately 7km (4 miles) from Milan. Milan–Malpensa Airport (MXP) (MXP) and Orio al Serio International Airport (BGY) (BGY) are also nearby and might be a better alternative airport depending on where you are flying from.

Drive yourself

Yes it is possible to drive from Viterbo and Milan. The distance is around 511km (317 miles) by road and it will take around 4h 45m in normal traffic conditons.

If you don't have a car, the easiest way to get from Viterbo to Milan is to take the train which takes, on average, 4hrs and will usually cost around €47 ($47).

How do I get from Viterbo to Milan

Compare travel optionsbetween Viterbo and Milan

Transport options from Viterbo to Milan
Transport optionDurationCostFrequencyDistance
Train and Plane + 3 similar
3h 35m
€82($82)
hourly587km (365 miles)
Train to Roma Trastevere, Fly3h 50m
€380($380)
hourly669km (416 miles)
Train to Roma Trastevere, plane4h 10m
€135($135)
hourly640km (397 miles)
Train to Roma Trastevere, plane5h 20m
€125($125)
hourly657km (408 miles)
Train + 1 similar
4hrs
€47($47)
once daily548km (340 miles)
Train via Firenze S.M.N.5h 20m
€50($50)
every 4 hours545km (339 miles)
Bus
8h 40m
€39($39)
twice a week527km (327 miles)
Bus and Train
5h 40m
€51($51)
once daily648km (402 miles)
Drive
4h 45m
€95($95)
on demand511km (317 miles)

Top Carriersoperating between Viterbo and Milan

Airlines

Bus companies

Train operators

Airports near Milan

The following major airports near Milan offer regular flights to various popular destinations within Italy and internationally.

LIN
Linate Airport (LIN)
International Airport
Distance
7km (4 miles) from Milan
MXP
Milan–Malpensa Airport (MXP)
International Airport
Distance
41km (26 miles) from Milan
BGY
Orio al Serio International Airport (BGY)
International Airport
Distance
45km (28 miles) from Milan