Cheapest price
$7
Average price
$8
Fastest journey
48 m
Average duration
48 m
Trains per day
68
Distance
45 km
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.
Of the 68 trains that leave Bergamo for Milan on Sun, Jun 15, 17 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
On Sun, Jun 15 the direct trains cover the 45 km distance in an average of 48 m but if you time it right, some trains will get you there in just 48 m .
On Sun, Jun 15 the slowest trains will take 48 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.
Omio recommends booking the train as it is the most popular option from Bergamo to Milan among Omio's users. If you are prioritising price take the bus with prices starting from €2. For those with little time consider booking a bus which can get you there in 1h 9m. In case you are seeking to minimise your carbon footprint the train is your best bet as it emits only 0.0 - 0.0kg.
Most popular Train | Bus |
---|---|
€5 Average price | €4 Average price Cheapest |
1h 59m Average duration 1h 29m Onboard + 30m Additional time* | 1h 39m Average duration Fastest 1h 9m Onboard + 30m Additional time* |
0.0 - 0.0kg CO2 emissions Lowest | 0.0 - 0.1kg CO2 emissions |
Direct Options | Direct Options |
Additional time: Average total travel duration to departure point, security checks and transfers.
Provider | Departs | Duration | Arrives | Transfers | Tickets |
---|---|---|---|---|---|
![]() | On time 11:49 AM Bergamo station | 1h40 | 1:29 PM Milan Porta Garibaldi | 1 transfer | |
![]() | 12:01 PM Bergamo Ospedale | 1h28 | 1:29 PM Milan Porta Garibaldi | 1 transfer | |
![]() | On time 12:02 PM Bergamo station | 0h48 | 12:50 PM Milan Centrale | 0 transfersDirect | |
![]() | On time 12:18 PM Bergamo station | 1h17 | 1:35 PM Milan Centrale | 1 transfer | |
![]() | 12:49 PM Bergamo station | 1h40 | 2:29 PM Milan Porta Garibaldi | 1 transfer | |
![]() | 1:01 PM Bergamo Ospedale | 1h28 | 2:29 PM Milan Porta Garibaldi | 1 transfer | |
![]() | On time 1:02 PM Bergamo station | 0h48 | 1:50 PM Milan Centrale | 0 transfersDirect | |
![]() | 1:18 PM Bergamo station | 1h17 | 2:35 PM Milan Centrale | 1 transfer | |
![]() | 1:49 PM Bergamo station | 1h40 | 3:29 PM Milan Porta Garibaldi | 1 transfer | |
![]() | 2:01 PM Bergamo Ospedale | 1h28 | 3:29 PM Milan Porta Garibaldi | 1 transfer | |
![]() | On time 2:02 PM Bergamo station | 0h48 | 2:50 PM Milan Centrale | 0 transfersDirect | |
![]() | On time 2:18 PM Bergamo station | 1h17 | 3:35 PM Milan Centrale | 1 transfer | |
![]() | 2:49 PM Bergamo station | 1h40 | 4:29 PM Milan Porta Garibaldi | 1 transfer | |
![]() | 3:01 PM Bergamo Ospedale | 1h28 | 4:29 PM Milan Porta Garibaldi | 1 transfer | |
![]() | 3:02 PM Bergamo station | 0h48 | 3:50 PM Milan Centrale | 0 transfersDirect | |
![]() | On time 3:18 PM Bergamo station | 1h17 | 4:35 PM Milan Centrale | 1 transfer | |
![]() | 3:49 PM Bergamo station | 1h40 | 5:29 PM Milan Porta Garibaldi | 1 transfer | |
![]() | 4:01 PM Bergamo Ospedale | 1h28 | 5:29 PM Milan Porta Garibaldi | 1 transfer | |
![]() | On time 4:02 PM Bergamo station | 0h48 | 4:50 PM Milan Centrale | 0 transfersDirect | |
![]() | 4:18 PM Bergamo station | 1h17 | 5:35 PM Milan Centrale | 1 transfer | |
![]() | 4:21 PM Bergamo Ospedale | 2h03 | 6:24 PM Milano Romolo | 2 transfers | |
![]() | 4:21 PM Bergamo Ospedale | 1h38 | 5:59 PM Milan Porta Garibaldi | 1 transfer | |
![]() | 4:49 PM Bergamo station | 1h40 | 6:29 PM Milan Porta Garibaldi | 1 transfer | |
![]() | 5:01 PM Bergamo Ospedale | 1h28 | 6:29 PM Milan Porta Garibaldi | 1 transfer | |
![]() | On time 5:02 PM Bergamo station | 0h48 | 5:50 PM Milan Centrale | 0 transfersDirect | |
![]() | 5:17 PM Bergamo Ospedale | 1h33 | 6:50 PM Milan Centrale | 1 transfer | |
![]() | 5:18 PM Bergamo station | 1h17 | 6:35 PM Milan Centrale | 1 transfer | |
![]() | 5:49 PM Bergamo station | 1h40 | 7:29 PM Milan Porta Garibaldi | 1 transfer | |
![]() | 6:01 PM Bergamo Ospedale | 1h28 | 7:29 PM Milan Porta Garibaldi | 1 transfer | |
![]() | 6:02 PM Bergamo station | 0h48 | 6:50 PM Milan Centrale | 0 transfersDirect | |
![]() | 6:12 PM Bergamo Ospedale | 1h38 | 7:50 PM Milan Centrale | 1 transfer | |
![]() | 6:18 PM Bergamo station | 1h17 | 7:35 PM Milan Centrale | 1 transfer | |
![]() | 6:49 PM Bergamo station | 1h40 | 8:29 PM Milan Porta Garibaldi | 1 transfer | |
![]() | 7:01 PM Bergamo Ospedale | 1h28 | 8:29 PM Milan Porta Garibaldi | 1 transfer | |
![]() | 7:02 PM Bergamo station | 0h48 | 7:50 PM Milan Centrale | 0 transfersDirect | |
![]() | 7:18 PM Bergamo station | 1h17 | 8:35 PM Milan Centrale | 1 transfer | |
![]() | 7:49 PM Bergamo station | 1h40 | 9:29 PM Milan Porta Garibaldi | 1 transfer | |
![]() | 8:01 PM Bergamo Ospedale | 1h28 | 9:29 PM Milan Porta Garibaldi | 1 transfer | |
![]() | On time 8:07 PM Bergamo station | 0h48 | 8:55 PM Milan Centrale | 0 transfersDirect | |
![]() | 9:00 PM Bergamo station | 0h50 | 9:50 PM Milan Centrale | 0 transfersDirect | |
![]() | 2:49 AM Bergamo station | 1h40 | 4:29 AM Milan Porta Garibaldi | 1 transfer | |
![]() | 3:00 AM Bergamo station | 0h50 | 3:50 AM Milan Centrale | 0 transfersDirect | |
![]() | 3:01 AM Bergamo Ospedale | 1h28 | 4:29 AM Milan Porta Garibaldi | 1 transfer | |
![]() | 3:49 AM Bergamo station | 1h40 | 5:29 AM Milan Porta Garibaldi | 1 transfer | |
![]() | 4:01 AM Bergamo Ospedale | 1h28 | 5:29 AM Milan Porta Garibaldi | 1 transfer | |
![]() | 4:02 AM Bergamo station | 0h48 | 4:50 AM Milan Centrale | 0 transfersDirect | |
![]() | 4:30 AM Bergamo station | 0h50 | 5:20 AM Milan Rogoredo | 0 transfersDirect | |
![]() | 4:49 AM Bergamo station | 1h40 | 6:29 AM Milan Porta Garibaldi | 1 transfer | |
![]() | 5:01 AM Bergamo Ospedale | 1h28 | 6:29 AM Milan Porta Garibaldi | 1 transfer | |
![]() | On time 5:02 AM Bergamo station | 0h48 | 5:50 AM Milan Centrale | 0 transfersDirect | |
![]() | 5:18 AM Bergamo station | 1h17 | 6:35 AM Milan Centrale | 1 transfer | |
![]() | 5:49 AM Bergamo station | 1h40 | 7:29 AM Milan Porta Garibaldi | 1 transfer | |
![]() | 6:01 AM Bergamo Ospedale | 1h28 | 7:29 AM Milan Porta Garibaldi | 1 transfer | |
![]() | On time 6:02 AM Bergamo station | 0h48 | 6:50 AM Milan Centrale | 0 transfersDirect | |
![]() | 6:18 AM Bergamo station | 1h17 | 7:35 AM Milan Centrale | 1 transfer | |
![]() | 6:49 AM Bergamo station | 1h40 | 8:29 AM Milan Porta Garibaldi | 1 transfer | |
![]() | 7:01 AM Bergamo Ospedale | 1h28 | 8:29 AM Milan Porta Garibaldi | 1 transfer | |
![]() | 7:02 AM Bergamo station | 0h48 | 7:50 AM Milan Centrale | 0 transfersDirect | |
![]() | 7:18 AM Bergamo station | 1h17 | 8:35 AM Milan Centrale | 1 transfer | |
![]() | 7:49 AM Bergamo station | 1h40 | 9:29 AM Milan Porta Garibaldi | 1 transfer | |
![]() | 8:01 AM Bergamo Ospedale | 1h28 | 9:29 AM Milan Porta Garibaldi | 1 transfer | |
![]() | On time 8:18 AM Bergamo station | 1h17 | 9:35 AM Milan Centrale | 1 transfer | |
![]() | 8:49 AM Bergamo station | 1h40 | 10:29 AM Milan Porta Garibaldi | 1 transfer | |
![]() | 9:01 AM Bergamo Ospedale | 1h28 | 10:29 AM Milan Porta Garibaldi | 1 transfer | |
![]() | 9:18 AM Bergamo station | 1h17 | 10:35 AM Milan Centrale | 1 transfer | |
![]() | 9:49 AM Bergamo station | 1h40 | 11:29 AM Milan Porta Garibaldi | 1 transfer | |
![]() | 10:01 AM Bergamo Ospedale | 1h28 | 11:29 AM Milan Porta Garibaldi | 1 transfer | |
![]() | 10:18 AM Bergamo station | 1h17 | 11:35 AM Milan Centrale | 1 transfer | |
![]() | 10:49 AM Bergamo station | 1h40 | 12:29 PM Milan Porta Garibaldi | 1 transfer | |
![]() | 11:01 AM Bergamo Ospedale | 1h28 | 12:29 PM Milan Porta Garibaldi | 1 transfer | |
![]() | 11:02 AM Bergamo station | 0h48 | 11:50 AM Milan Centrale | 0 transfersDirect | |
![]() | 11:18 AM Bergamo station | 1h17 | 12:35 PM Milan Centrale | 1 transfer | |
This is the last train of the day. | |||||
Find all the dates and times for this journey
Distance 27 miles (45 km) |
Average train duration 1h 29m |
Cheapest ticket price $6 (€5) |
Trains per day 79 |
Direct trains 25 |
Fastest train 50m |
First train 07:49 |
Last train 22:00 |
Travel between Bergamo and Milan from $6 (€5) with Omio’s train partners Regionale, Frecciarossa and Frecciargento! You can find the best schedules and tickets when comparing and booking the most popular route for you.
Regionale is the regional train service of national carrier Trenitalia connecting all of Italy. It is the most convinient way to travel to both big cities and the smallest villages all over the Italian country. The regional trains have different names depending on the region they serve, such as Treno Regionale Veloce (TRV) and Treno Regionale Lento (TRL). Treno Rock and Treno pop are the two new trains part of Trenitalia regionale fleet. Trenitalia Regionale offers a variety of ticket types, including single tickets (economy and standard), return tickets, and season tickets. Onboard facilities include free Wi-Fi, air conditioning, and power sockets. The most popular routes for Regionale are between Rome and Milan, Naples and Florence, and Turin and Venice.
Train information from Bergamo to Milan with Regionale:
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!
When departing from Bergamo, you have various train station options to start your journey from including Bergamo and Bergamo Ospedale. When arriving in Milan, you can end your route in train stations like Milan Centrale, Milan Porta Garibaldi and Milan Rogoredo.
Passengers board the train most frequently from Bergamo, which is located around 1.1 miles (1.8 km) away from the city centre, and they get off the train at Milan Centrale, located 2.3 miles (3.7 km) away from the city centre.
Here are some other resources that might have the information you need