The average train between Milan and Gruyères takes 7h 15m and the fastest train takes 4h 47m. The train service runs several times per day from Milan to Gruyères. 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 twice daily between Milan and Gruyères. The earliest departure is at 7:10 AM in the morning, and the last departure from Milan is at 6:05 PM which arrives into Gruyères at 7:57 AM. All services require a transfer at Bern and take an average of 7h 15m. The schedules shown below are for the next available departures.


4h 47m • 2 changes

4h 47m • 2 changesArrives next day


13h 52m • 2 changes

4h 47m • 2 changes

4h 47m • 2 changesArrives next day


13h 52m • 2 changesWant to know about travelling from Milan to Gruyères? 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 Milan to Gruyères. However, there are services departing from Milan station and arriving at Gruyères station via Bern. The journey, including transfers, takes approximately 7h 15m.
Milan to Gruyères train services, operated by Trenitalia EuroCity, depart from Milano Centrale station.
Milan to Gruyères train services, operated by Trenitalia EuroCity, arrive at Bulle station.
Book your Milan to Gruyères train tickets online with Trenitalia EuroCity and Service d'automobiles TPF.
The distance between Milan and Gruyères is 204.9 km. The road distance is 341 km.
You can take a train from Milano Centrale to Gruyères via Bern and Bulle in around 5h 37m.