Bergamo has a medieval upper town encircled by Venetian walls that makes people physically stop and stare. 50 minutes from Milan, absurdly cheap, most foreign tourists skip it. Their loss.
Milano Centrale → Bergamo. Then ATB Bus 1 to funicular base (10 min), Funicolare up to Città Alta (included in €1.35 bus ticket).
Train, 50 min, €5.80. The single best "hidden gem" day trip from Milan.