- Must visit
Pinacoteca di Brera
One of Italy’s top art museums, featuring masterpieces by Mantegna, Bellini, Raphael, Caravaggio, and Piero della Francesca.
The best way to find a cheap train ticket from Bergamo to Milan is to book your journey as far in advance as possible and to avoid traveling at rush hour.
The average ticket from Bergamo to Milan will cost around $8 if you buy it on the day, but the cheapest tickets can be found for only $7.
On Fri, Nov 13, we found 106 trains from Bergamo to Milan, including 53 direct services.
On Fri, Nov 13 the direct trains cover the 45 km distance in an average of 37 m but if you time it right, some trains will get you there in just 37 m .
On Fri, Nov 13 the slowest trains will take 37 m and usually involve a change or two along the way, but you might be able to save a few pennies if you’re on a budget.
Autobus TRENORD 22A · 25822 · 24923
|
| ||||||||||||
Autobus TRENORD 38A · 25838
|
| ||||||||||||
Autobus TRENORD 82A · 25882
|
| ||||||||||||
Autobus TRENORD 70A · 25870
|
| ||||||||||||
Autobus TRENORD 26A · 25826 · 2815
|
| ||||||||||||
2242
|
| ||||||||||||
2236
|
| ||||||||||||
2240
|
| ||||||||||||
2222
|
| ||||||||||||
2230
|
| ||||||||||||
Trains from Bergamo to Milan run on average 59 times per day, taking around 47m. Cheap train tickets for this journey start at $8 but you can travel from only $2 by bus.
There are 48 trains per day. The earliest train runs at 00:04, the last at 23:56. The fastest train covers the 27 miles (45 km) distance in 37m.
Distance 27 miles (45 km) |
Average train duration 47m |
Cheapest ticket price $8 |
Trains per day 59 |
Direct trains 48 |
Fastest train 37m |
First train 12:04 AM |
Last train 11:56 PM |
Cheapest Month Feb |
Cheapest Day Tue |
High Season Jan - Mar |
Low Season Jul - Sep |
Busiest Day Sun |
Least Busy Day Wed |
Best time to book 91 days |
Use these quick route answers to check fares, travel time, departure options, and direct services before booking from Bergamo to Milan.
The table below shows live departures for Bergamo to Milan trains for today, Thursday, November 12. You can also manually refresh the results below to see updated train journeys.
| Provider | Departs | Duration | Arrives | Transfers | Tickets |
|---|---|---|---|---|---|
2276 | On time 4:40 PM Bergamo station | 0h40 | 5:20 PM Milano Lambrate | 0 transfersDirect | |
2276 | On time 4:40 PM Bergamo station | 1h00 | 5:40 PM Milan Porta Garibaldi | 0 transfersDirect | |
Autobus TRENORD 1735A · 2278 | 5:01 PM Bergamo Ospedale | 1h19 | 6:20 PM Milano Lambrate | 1 transfer | |
Autobus TRENORD 66A · 25866 | 5:01 PM Bergamo Ospedale | 1h20 | 6:21 PM Milano Greco Pirelli | 1 transfer | |
Autobus TRENORD 66A · 25866 | 5:01 PM Bergamo Ospedale | 1h28 | 6:29 PM Milan Porta Garibaldi | 1 transfer | |
2236 | On time 5:02 PM Bergamo station | 0h48 | 5:50 PM Milan Centrale | 0 transfersDirect | |
2236 | 5:02 PM Bergamo station | 0h37 | 5:39 PM Milano Lambrate | 0 transfersDirect | |
2278 | 5:40 PM Bergamo station | 0h40 | 6:20 PM Milano Lambrate | 0 transfersDirect | |
2278 | 5:40 PM Bergamo station | 1h00 | 6:40 PM Milan Porta Garibaldi | 0 transfersDirect | |
Autobus TRENORD 1737A · 2280 | 6:01 PM Bergamo Ospedale | 1h19 | 7:20 PM Milano Lambrate | 1 transfer | |
Autobus TRENORD 70A · 25870 | 6:01 PM Bergamo Ospedale | 1h28 | 7:29 PM Milan Porta Garibaldi | 1 transfer | |
Autobus TRENORD 70A · 25870 | 6:01 PM Bergamo Ospedale | 1h20 | 7:21 PM Milano Greco Pirelli | 1 transfer | |
2238 | 6:02 PM Bergamo station | 0h37 | 6:39 PM Milano Lambrate | 0 transfersDirect | |
2238 | On time 6:02 PM Bergamo station | 0h48 | 6:50 PM Milan Centrale | 0 transfersDirect | |
Autobus TRENORD 72A · 25872 · 25533 | 6:21 PM Bergamo Ospedale | 1h59 | 8:20 PM Milan Centrale | 2 transfers | |
Autobus TRENORD 72A · 25872 | 6:21 PM Bergamo Ospedale | 1h38 | 7:59 PM Milan Porta Garibaldi | 1 transfer | |
2280 | 6:40 PM Bergamo station | 1h04 | 7:44 PM Milan Porta Garibaldi | 0 transfersDirect | |
2280 | 6:40 PM Bergamo station | 0h40 | 7:20 PM Milano Lambrate | 0 transfersDirect | |
Autobus TRENORD 74A · 25874 | 7:01 PM Bergamo Ospedale | 1h20 | 8:21 PM Milano Greco Pirelli | 1 transfer | |
Autobus TRENORD 74A · 25874 | 7:01 PM Bergamo Ospedale | 1h28 | 8:29 PM Milan Porta Garibaldi | 1 transfer | |
Autobus TRENORD 1739A · 2282 | 7:01 PM Bergamo Ospedale | 1h19 | 8:20 PM Milano Lambrate | 1 transfer | |
2240 | 7:02 PM Bergamo station | 0h48 | 7:50 PM Milan Centrale | 0 transfersDirect | |
2240 | 7:02 PM Bergamo station | 0h37 | 7:39 PM Milano Lambrate | 0 transfersDirect | |
Autobus TRENORD 65A · 2242 | 7:19 PM Bergamo Ospedale | 1h31 | 8:50 PM Milan Centrale | 1 transfer | |
Autobus TRENORD 65A · 2242 | 7:19 PM Bergamo Ospedale | 1h20 | 8:39 PM Milano Lambrate | 1 transfer | |
2282 | 7:40 PM Bergamo station | 1h00 | 8:40 PM Milan Porta Garibaldi | 0 transfersDirect | |
2282 | 7:40 PM Bergamo station | 0h40 | 8:20 PM Milano Lambrate | 0 transfersDirect | |
Autobus TRENORD 78A · 25878 | 8:01 PM Bergamo Ospedale | 1h28 | 9:29 PM Milan Porta Garibaldi | 1 transfer | |
2242 | 8:02 PM Bergamo station | 0h48 | 8:50 PM Milan Centrale | 0 transfersDirect | |
2242 | 8:02 PM Bergamo station | 0h37 | 8:39 PM Milano Lambrate | 0 transfersDirect | |
Autobus TRENORD 69A · 2284 | 8:14 PM Bergamo Ospedale | 1h06 | 9:20 PM Milano Lambrate | 1 transfer | |
2284 | 8:40 PM Bergamo station | 1h00 | 9:40 PM Milan Porta Garibaldi | 0 transfersDirect | |
2284 | 8:40 PM Bergamo station | 0h40 | 9:20 PM Milano Lambrate | 0 transfersDirect | |
Autobus TRENORD 82A · 25882 | 9:01 PM Bergamo Ospedale | 1h28 | 10:29 PM Milan Porta Garibaldi | 1 transfer | |
2244 | 9:02 PM Bergamo station | 0h48 | 9:50 PM Milan Centrale | 0 transfersDirect | |
2244 | 9:02 PM Bergamo station | 0h37 | 9:39 PM Milano Lambrate | 0 transfersDirect | |
22678 · 2646 | 9:18 PM Bergamo station | 1h17 | 10:35 PM Milan Centrale | 1 transfer | |
Autobus TRENORD 86A · 25886 | 9:49 PM Bergamo station | 1h40 | 11:29 PM Milan Porta Garibaldi | 1 transfer | |
Autobus TRENORD 86A · 25886 | 10:01 PM Bergamo Ospedale | 1h28 | 11:29 PM Milan Porta Garibaldi | 1 transfer | |
| Friday, November 13 | |||||
2212 | 5:00 AM Bergamo station | 0h39 | 5:39 AM Milano Lambrate | 0 transfersDirect | |
2212 | 5:00 AM Bergamo station | 0h50 | 5:50 AM Milan Centrale | 0 transfersDirect | |
Autobus TRENORD 18A · 25818 | 5:01 AM Bergamo Ospedale | 1h28 | 6:29 AM Milan Porta Garibaldi | 1 transfer | |
Autobus TRENORD 20A · 25820 | 5:31 AM Bergamo Ospedale | 1h28 | 6:59 AM Milan Porta Garibaldi | 1 transfer | |
88488 | 5:54 AM Bergamo station | 0h45 | 6:39 AM Milano Lambrate | 0 transfersDirect | |
88488 | 5:54 AM Bergamo station | 0h56 | 6:50 AM Milan Centrale | 0 transfersDirect | |
Autobus TRENORD 22A · 25822 · 24923 | 6:01 AM Bergamo Ospedale | 1h45 | 7:46 AM Milano Porta Romana | 2 transfers | |
Autobus TRENORD 22A · 25822 | 6:01 AM Bergamo Ospedale | 1h28 | 7:29 AM Milan Porta Garibaldi | 1 transfer | |
2256 | 6:30 AM Bergamo station | 1h02 | 7:32 AM Milan Porta Garibaldi | 0 transfersDirect | |
2256 | 6:30 AM Bergamo station | 0h41 | 7:11 AM Milano Lambrate | 0 transfersDirect | |
Autobus TRENORD 24A · 25824 | 6:31 AM Bergamo Ospedale | 1h28 | 7:59 AM Milan Porta Garibaldi | 1 transfer | |
Autobus TRENORD 15A · 2258 | 6:44 AM Bergamo Ospedale | 1h12 | 7:56 AM Milano Lambrate | 1 transfer | |
88490 | 6:54 AM Bergamo station | 0h56 | 7:50 AM Milan Centrale | 0 transfersDirect | |
88490 | 6:54 AM Bergamo station | 0h45 | 7:39 AM Milano Lambrate | 0 transfersDirect | |
Autobus TRENORD 26A · 25826 · 2815 | 7:01 AM Bergamo Ospedale | 1h39 | 8:40 AM Milan Centrale | 2 transfers | |
Autobus TRENORD 26A · 25826 | 7:01 AM Bergamo Ospedale | 1h20 | 8:21 AM Milano Greco Pirelli | 1 transfer | |
Autobus TRENORD 26A · 25826 | 7:01 AM Bergamo Ospedale | 1h28 | 8:29 AM Milan Porta Garibaldi | 1 transfer | |
2258 | 7:13 AM Bergamo station | 1h05 | 8:18 AM Milan Porta Garibaldi | 0 transfersDirect | |
2258 | 7:13 AM Bergamo station | 0h43 | 7:56 AM Milano Lambrate | 0 transfersDirect | |
Autobus TRENORD 17A · 2218 | 7:29 AM Bergamo Ospedale | 1h10 | 8:39 AM Milano Lambrate | 1 transfer | |
Autobus TRENORD 17A · 2218 | 7:29 AM Bergamo Ospedale | 1h21 | 8:50 AM Milan Centrale | 1 transfer | |
2206 | 7:40 AM Bergamo station | 0h50 | 8:30 AM Milan Centrale | 0 transfersDirect | |
Autobus TRENORD 30A · 25830 | 8:01 AM Bergamo Ospedale | 1h28 | 9:29 AM Milan Porta Garibaldi | 1 transfer | |
2218 | 8:02 AM Bergamo station | 0h48 | 8:50 AM Milan Centrale | 0 transfersDirect | |
2218 | 8:02 AM Bergamo station | 0h37 | 8:39 AM Milano Lambrate | 0 transfersDirect | |
Autobus TRENORD 21A · 2260 | 8:14 AM Bergamo Ospedale | 1h07 | 9:21 AM Milano Lambrate | 1 transfer | |
2260 | 8:40 AM Bergamo station | 1h00 | 9:40 AM Milan Porta Garibaldi | 0 transfersDirect | |
2260 | 8:40 AM Bergamo station | 0h41 | 9:21 AM Milano Lambrate | 0 transfersDirect | |
Autobus TRENORD 1719A · 2262 | 9:01 AM Bergamo Ospedale | 1h20 | 10:21 AM Milano Lambrate | 1 transfer | |
Autobus TRENORD 34A · 25834 | 9:01 AM Bergamo Ospedale | 1h28 | 10:29 AM Milan Porta Garibaldi | 1 transfer | |
Autobus TRENORD 34A · 25834 | 9:01 AM Bergamo Ospedale | 1h20 | 10:21 AM Milano Greco Pirelli | 1 transfer | |
2220 | 9:02 AM Bergamo station | 0h37 | 9:39 AM Milano Lambrate | 0 transfersDirect | |
2220 | On time 9:02 AM Bergamo station | 0h48 | 9:50 AM Milan Centrale | 0 transfersDirect | |
2262 | 9:40 AM Bergamo station | 0h41 | 10:21 AM Milano Lambrate | 0 transfersDirect | |
2262 | 9:40 AM Bergamo station | 1h00 | 10:40 AM Milan Porta Garibaldi | 0 transfersDirect | |
Autobus TRENORD 38A · 25838 | 10:01 AM Bergamo Ospedale | 1h28 | 11:29 AM Milan Porta Garibaldi | 1 transfer | |
2222 | 10:02 AM Bergamo station | 0h37 | 10:39 AM Milano Lambrate | 0 transfersDirect | |
2222 | 10:02 AM Bergamo station | 0h48 | 10:50 AM Milan Centrale | 0 transfersDirect | |
22634 · 2624 | 10:18 AM Bergamo station | 1h17 | 11:35 AM Milan Centrale | 1 transfer | |
Autobus TRENORD 42A · 25842 | 11:01 AM Bergamo Ospedale | 1h28 | 12:29 PM Milan Porta Garibaldi | 1 transfer | |
2224 | 11:02 AM Bergamo station | 0h48 | 11:50 AM Milan Centrale | 0 transfersDirect | |
2224 | 11:02 AM Bergamo station | 0h37 | 11:39 AM Milano Lambrate | 0 transfersDirect | |
22638 · 2626 | 11:18 AM Bergamo station | 1h17 | 12:35 PM Milan Centrale | 1 transfer | |
Autobus TRENORD 46A · 25846 | 12:01 PM Bergamo Ospedale | 1h28 | 1:29 PM Milan Porta Garibaldi | 1 transfer | |
2226 | 12:02 PM Bergamo station | 0h37 | 12:39 PM Milano Lambrate | 0 transfersDirect | |
2226 | 12:02 PM Bergamo station | 0h48 | 12:50 PM Milan Centrale | 0 transfersDirect | |
22642 · 2628 | 12:18 PM Bergamo station | 1h17 | 1:35 PM Milan Centrale | 1 transfer | |
Autobus TRENORD 39A · 22646 · 10608 | 12:44 PM Bergamo Ospedale | 1h29 | 2:13 PM Milano Lambrate | 2 transfers | |
Autobus TRENORD 50A · 25850 | 1:01 PM Bergamo Ospedale | 1h28 | 2:29 PM Milan Porta Garibaldi | 1 transfer | |
2228 | 1:02 PM Bergamo station | 0h48 | 1:50 PM Milan Centrale | 0 transfersDirect | |
2228 | 1:02 PM Bergamo station | 0h37 | 1:39 PM Milano Lambrate | 0 transfersDirect | |
22646 · 10608 | 1:18 PM Bergamo station | 0h55 | 2:13 PM Milano Lambrate | 1 transfer | |
Autobus TRENORD 54A · 25854 | 2:01 PM Bergamo Ospedale | 1h28 | 3:29 PM Milan Porta Garibaldi | 1 transfer | |
2230 | 2:02 PM Bergamo station | 0h37 | 2:39 PM Milano Lambrate | 0 transfersDirect | |
2230 | On time 2:02 PM Bergamo station | 0h48 | 2:50 PM Milan Centrale | 0 transfersDirect | |
22650 · 2632 | 2:18 PM Bergamo station | 1h17 | 3:35 PM Milan Centrale | 1 transfer | |
Autobus TRENORD 58A · 25858 | 3:01 PM Bergamo Ospedale | 1h28 | 4:29 PM Milan Porta Garibaldi | 1 transfer | |
2232 | 3:02 PM Bergamo station | 0h48 | 3:50 PM Milan Centrale | 0 transfersDirect | |
2232 | 3:02 PM Bergamo station | 0h37 | 3:39 PM Milano Lambrate | 0 transfersDirect | |
22654 · 2634 | 3:18 PM Bergamo station | 1h17 | 4:35 PM Milan Centrale | 1 transfer | |
Autobus TRENORD 51A · 22658 · 10610 | 3:44 PM Bergamo Ospedale | 1h29 | 5:13 PM Milano Lambrate | 2 transfers | |
Autobus TRENORD 1733A · 2276 | 4:01 PM Bergamo Ospedale | 1h19 | 5:20 PM Milano Lambrate | 1 transfer | |
Autobus TRENORD 62A · 25862 | 4:01 PM Bergamo Ospedale | 1h28 | 5:29 PM Milan Porta Garibaldi | 1 transfer | |
Autobus TRENORD 62A · 25862 | 4:01 PM Bergamo Ospedale | 1h20 | 5:21 PM Milano Greco Pirelli | 1 transfer | |
2234 | 4:02 PM Bergamo station | 0h48 | 4:50 PM Milan Centrale | 0 transfersDirect | |
2234 | 4:02 PM Bergamo station | 0h37 | 4:39 PM Milano Lambrate | 0 transfersDirect | |
22658 · 10610 | 4:18 PM Bergamo station | 0h55 | 5:13 PM Milano Lambrate | 1 transfer | |
This is the last train of the day. | |||||
Find all the dates and times for this journey
By Sara Mastellone

If you’re looking to combine Italian charm with urban energy, the Bergamo to Milan train route is a perfect choice. Whether it’s a quick day trip, work commute, or sightseeing adventure, this train ride is more than just a connection, I could say it’s part of the journey!

Piazza Cordusio in Milan by night.
Trains from Bergamo to Milan cover roughly 50 kilometers (31 miles) in about 50-60 minutes. Trenitalia Trenord operates frequent regional trains from Bergamo station to Milano Centrale station, offering comfort and speed without the hassle of traffic or parking in the chaos of the city.
I booked my tickets through Omio and it made everything simple. Trains are frequent and almost always punctual, making it easy to plan a day in Milan without worrying about delays. Compared to driving, traveling by train is far more relaxed, letting you enjoy views of Lombardy’s countryside.
Bergamo station is compact, easy to navigate, and full of little cafés to grab a coffee before departure. Arrive a few minutes early to soak in the atmosphere and pick your preferred seat on the train.
Milan Centrale is a huge hub of activity, well-signed and connected to metro, tram and bus lines. From here, you can head straight into Milan’s shopping streets, art museums or business districts in a few minutes by metro (take the Red line or the Yellow line).
Trains run roughly every 30 minutes throughout the day. Early morning trains are ideal for arriving in Milan ready to explore, while late afternoon options make the return to Bergamo effortless.
Regional trains are straightforward, with comfortable seating and a lot of space for luggage. For a short journey, I must say it’s efficient and stress-free. The views of Lombardy’s rolling hills and small towns are a bonus and make the ride unexpectedly scenic!
Tickets are cheap, typically around €5-€8 one way. Purchase them at the station or via Omio. No need to book far in advance, but checking schedules can help you pick the quietest times or plan your day better.
| Item | Cost (eur) |
|---|---|
| Ticket price | €8 |
| Food & drinks | €3 |
| Travel to departure station | €0 |
| Travel from arrival station | €2.2 |
| Total | € 13.2 |
Traveling from Bergamo to Milan by train is quick, comfortable and convenient. Book your ticket, pick a window seat, and enjoy Lombardy’s scenery before stepping into the eccentric heart of Milan.

Review the details behind your booking, from operators and ticket rules to luggage, onboard amenities, accessibility, and route-specific travel policies.
Discover the best of Milan — top attractions, local food, transport tips, budget advice, and currency essentials. Plan your perfect Milan trip today.
One of Italy’s top art museums, featuring masterpieces by Mantegna, Bellini, Raphael, Caravaggio, and Piero della Francesca.
This contemporary art museum near Porta Romana presents rotating exhibitions in a striking former industrial distillery complex.
Italy’s leading science museum is set in a former monastery and features Leonardo galleries, trains, aircraft, and a submarine.
Milan’s central square frames the cathedral and major civic buildings, making it the city’s essential meeting point and photo stop.
This artistic district offers charming lanes, Brera atmosphere, boutiques, and easy access to galleries and evening strolls.
A large landscaped park behind the castle, perfect for walks, skyline views, and reaching landmarks like the Arch of Peace.
Saffron risotto cooked with butter, stock and cheese. It is Milan's signature dish, linked to the city's love of rich northern Italian rice cookery.
Breaded veal cutlet fried in butter until golden. A classic Milanese main, prized for its simple preparation and long-standing local tradition.
Slow-braised veal shanks with vegetables, wine and broth, often finished with gremolata. A hearty Lombard specialty commonly paired with risotto.
Three-Michelin-star fine dining by Enrico Bartolini in MUDEC. Expect refined Italian tasting menus in a polished contemporary setting.
Historic Milanese restaurant near the Duomo, famous for risotto and cotoletta. Traditional, elegant rooms and a strong local culinary identity.
Long-running local favorite for classic Milanese cuisine, especially risotto and ossobuco. Warm, old-school atmosphere in the Brera area.
Moderate for Western Europe. Hotels and central dining can be pricey, but transit is affordable and budget meals, aperitivo deals, and local cafes help keep daily costs reasonable.
Tipping is modest. Service may be included. Round up or leave €1-2 at cafes, 5-10% for good restaurant service, and round up taxi fares.
Official public transport app
Milan Centrale -> Piazza del Duomo
Get destination-focused answers for the end of your trip, including what to do, when to go, practical entry details, and tips for making the most of your time in Milan.
The train connection between Bergamo and Milan is efficient and convenient, making it easy for travelers to explore these vibrant cities. The journey is serviced by several providers including Regionale, Frecciarossa, and Frecciargento. With frequent departures throughout the day, passengers can enjoy a comfortable ride while taking in the scenic views of Lombardy's countryside. Whether you're heading to Milan for business or leisure, this rail link offers a seamless travel experience.
The train connection between Bergamo and Milan is direct, with a duration of just 48 minutes. There are approximately 12 connections available each day, providing convenient travel options for passengers. The departure stations include Bergamo and Bergamo Ospedale, while the arrival stations in Milan encompass Milano Villapizzone, Milano Rogoredo, Milano Greco Pirelli, Milano Centrale, Milano Porta Garibaldi, and Milano Lambrate.
The first daily train from Bergamo to Milan departs at 06:49, providing an early start for travelers looking to explore the vibrant city of Milan. The last train of the day leaves at 22:00, allowing visitors ample time to enjoy a full day in this bustling metropolis before returning.
The cheapest ticket price for the train connection from Bergamo to Milan is €5. The average ticket price typically hovers around €5 as well, making this route an economical choice for travelers looking to explore these vibrant Italian cities.
Welcome to the magnificent Milan Cathedral, or Duomo di Milano, a stunning example of Gothic architecture that took nearly six centuries to complete. Its intricate façade and towering spires not only symbolize Milan's rich history but also serve as a testament to the city's artistic ambition during the Renaissance. As you step inside, be sure to admire its breathtaking stained glass windows and climb up for panoramic views of the city from its rooftop terraces.
Next, we find ourselves at Galleria Vittorio Emanuele II, an architectural marvel often referred to as Italy’s oldest shopping mall. Opened in 1867, this elegant structure is significant not just for its luxurious shops and cafes but also as a social hub where locals gather under its grand glass dome adorned with beautiful mosaics. Don’t miss taking a spin on the iconic bull mosaic—it's said that doing so brings good luck!
Finally, let’s explore Sforza Castle (Castello Sforzesco), which has stood since the 15th century as both a fortress and royal residence for Duke Francesco Sforza. This historic landmark holds immense significance in Italian history; it was once home to notable figures like Leonardo da Vinci who contributed art pieces now housed within its walls. Wander through its expansive courtyards and museums filled with masterpieces while imagining life in this formidable stronghold during times of power struggles!
Find answers to the most common questions about traveling from Bergamo to Milan by train. From journey times and ticket prices to direct connections, first and last departures, and even whether the route is scenic, our FAQs cover everything you need to plan your trip. Whether you’re looking for the fastest train, the cheapest option, or tips for making the most of your visit at Milan, this guide helps you travel smarter and with confidence.

Here are some other resources that might have the information you need