The average train between Bergamo (Station) and Milano Porta Garibaldi takes 58 min and the fastest train takes 52 min. There is a train service every few hours from Bergamo (Station) to Milano Porta Garibaldi. 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 hourly between Bergamo (Station) and Milano Porta Garibaldi. The earliest departure is at 4:56 AM at night, and the last departure from Bergamo (Station) is at 10:03 PM which arrives into Milano Porta Garibaldi at 11:05 PM. All services require a transfer at Bergamo and take an average of 58 min. The schedules shown below are for the next available departures.

52 min • 1 change

59 min • 1 change

52 min • 1 change

52 min • 1 change

1h 8m • 1 change

55 min • 1 change

59 min • 1 change

1h 1m • 1 change

1h 8m • 1 change

55 min • 1 change

59 min • 1 change

1h 1m • 1 change
Want to know about travelling from Bergamo (Station) to Milano Porta Garibaldi? 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 Bergamo (Station) to Milano Porta Garibaldi. However, there are services departing from Bergamo (Station) station and arriving at Milano Porta Garibaldi station via Milano Lambrate. The journey, including transfers, takes approximately 58 min.
Bergamo (Station) to Milano Porta Garibaldi train services, operated by Trenord, depart from Bergamo station.
Bergamo (Station) to Milano Porta Garibaldi train services, operated by Trenord, arrive at Milano Lambrate station.
Book your Bergamo (Station) to Milano Porta Garibaldi train tickets online with Trenord and ATM.
The distance between Bergamo (Station) and Milano Porta Garibaldi is 44.7 km. The road distance is 54 km.
Trenord operates a train from Bergamo to Milano Lambrate hourly. Tickets cost €4–6 and the journey takes 41 min.