The average bus between Milan and Canton of Vaud takes 6h 7m and the fastest bus takes 5h 25m. The bus service runs several times per day from Milan to Canton of Vaud. 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 Canton of Vaud. The earliest departure is at 10:00 AM in the morning, and the last departure from Milan is at 11:59 PM which arrives into Canton of Vaud at 5:25 AM. All services require a transfer, and take on average 6h 7m. The schedules shown below are for the next available departures.

5h 40m • 1 change

7h 11m • 1 change
Arrives next day

5h 25m • 1 change

5h 36m • 1 change

7h 10m • 1 change
Arrives next day

5h 26m • 1 change

5h 36m • 1 change

7h 11m • 1 change
Arrives next day

5h 26m • 1 change

5h 40m • 1 change

7h 11m • 1 change
Arrives next day

5h 26m • 1 change
Want to know about travelling from Milan to Canton of Vaud? 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 bus from Milan to Canton of Vaud. However, there are services departing from Milan station and arriving at Canton of Vaud station via Lausanne. The journey, including transfers, takes approximately 6h 7m.
Milan to Canton of Vaud bus services, operated by BlaBlaCar Bus, depart from Milano, Autostazione Lampugnano station.
Milan to Canton of Vaud bus services, operated by BlaBlaCar Bus, arrive at Lausanne station.
The distance between Milan and Canton of Vaud is 242.9 km. The road distance is 324 km.
BlaBlaCar Bus operates a bus from Milano, Autostazione Lampugnano to Lausanne twice daily. Tickets cost CHF 26–50 and the journey takes 5h 1m.