- Must visit
Accademia Carrara
Bergamo’s premier art museum, known for its strong collection of Italian Renaissance and Baroque paintings. A top cultural stop near the airport area for travelers heading into Bergamo.
Cheapest price
$34
Average price
$34
Fastest journey
3 h 40 m
Average duration
3 h 47 m
Trains per day
43
Distance
41 km
The best way to find a cheap train ticket from Milan Linate Airport to Milan Bergamo Orio al Serio Airport is to book your journey as far in advance as possible and to avoid traveling at rush hour.
The average ticket from Milan Linate Airport to Milan Bergamo Orio al Serio Airport will cost around $34 if you buy it on the day, but the cheapest tickets can be found for only $34.
It's difficult to get from Milan Linate Airport to Milan Bergamo Orio al Serio Airport without transferring at least once.
S5 TRENORD 24521 · Regionale TRENORD 2617+
ORIO AIRLINK BG014
S5 TRENORD 24549 · Regionale TRENORD 2631+
ORIO AIRLINK BG024
S5 TRENORD 24533 · Regionale TRENORD 2623+
ORIO AIRLINK BG018
S5 TRENORD 24557 · Regionale TRENORD 2635+
ORIO AIRLINK BG026
S5 TRENORD 24513 · Regionale TRENORD 2613+
ORIO AIRLINK BG012
Regionale TRENORD 2635+
ORIO AIRLINK BG026
S9 TRENORD 24962 · Regionale TRENORD 2635+
ORIO AIRLINK BG026
S5 TRENORD 24557 · Regionale TRENORD 2635+
ORIO AIRLINK BG026
Regionale TRENORD 2643+
ORIO AIRLINK BG030
S5 TRENORD 24557 · Regionale TRENORD 2635+
ORIO AIRLINK BG026Omio recommends booking the bus as it is the most popular option from Milan Linate Airport to Milan Bergamo Orio al Serio Airport among Omio's users. If you are prioritising price take the train with prices starting from $30. For those with little time consider booking a train which can get you there in 56m. The ticket price range depends on the travel mode: a train costs an average of $30, and a bus costs an average of $12.
Distance: 25 miles (41 km)
| Train | Most popular Bus | Driving |
|---|---|---|
$34 Average price Cheapest | $67 Average price | $16 Average price (fuel + tolls) |
1h 26m Average total duration Fastest 56m Onboard + 30m Additional time* | 1h 38m Average total duration 1h 8m Onboard + 30m Additional time* | 40m Average total duration (door-to-door) |
![]() Most popular train company | ![]() Most popular bus company | Your own car or car rental |
Direct Options | Direct Options | Direct Options |
This is compared to other travel options from Milan Linate Airport to Milan Bergamo Orio al Serio Airport:
A train is $33 (€27) less than a bus for this route with tickets for a bus from Milan Linate Airport to Milan Bergamo Orio al Serio Airport costing on average $67 (€55).
Other travel options to Milan Bergamo Orio al Serio Airport take longer:
Bus takes on average 1h 8m.
Tickets start at around $34 (€28) compared to roughly $16 (€13) in fuel and tolls — a saving of about $-17.64 (€-14.53). The journey takes 56m versus 40m by car, so you'll arrive a bit later, but you can work, read, or sleep along the way rather than spending the time behind the wheel. You'll also save the hassle of parking at the other end.
Driving is worth it if you're on a tight schedule, travelling as a group, or want to stop somewhere en route.
The table below shows live departures for Milan Linate Airport to Milan Bergamo Orio al Serio Airport trains for today, Monday, June 29. You can also manually refresh the results below to see updated train journeys.
| Provider | Departs | Duration | Arrives | Transfers | Tickets |
|---|---|---|---|---|---|
S5 TRENORD 24549 · Regionale TRENORD 2631+ ORIO AIRLINK BG024 | 3:11 PM Milano Forlanini | 4h24 | 7:35 PM Milan Bergamo Orio al Serio Airport | 2 transfers | |
S5 TRENORD 24549 · Regionale TRENORD 2631+ ORIO AIRLINK BG024 | 3:18 PM Segrate station | 4h17 | 7:35 PM Milan Bergamo Orio al Serio Airport | 2 transfers | |
S9 TRENORD 24954 · Regionale TRENORD 2631+ ORIO AIRLINK BG024 | 3:21 PM Milano Forlanini | 4h14 | 7:35 PM Milan Bergamo Orio al Serio Airport | 2 transfers | |
Regionale TRENORD 2631+ ORIO AIRLINK BG024 | 3:25 PM Milan Centrale | 4h10 | 7:35 PM Milan Bergamo Orio al Serio Airport | 1 transfer | |
S5 TRENORD 24557 · Regionale TRENORD 2635+ ORIO AIRLINK BG026 | 5:11 PM Milano Forlanini | 3h54 | 9:05 PM Milan Bergamo Orio al Serio Airport | 2 transfers | |
S5 TRENORD 24557 · Regionale TRENORD 2635+ ORIO AIRLINK BG026 | 5:18 PM Segrate station | 3h47 | 9:05 PM Milan Bergamo Orio al Serio Airport | 2 transfers | |
S9 TRENORD 24962 · Regionale TRENORD 2635+ ORIO AIRLINK BG026 | 5:21 PM Milano Forlanini | 3h44 | 9:05 PM Milan Bergamo Orio al Serio Airport | 2 transfers | |
Regionale TRENORD 2635+ ORIO AIRLINK BG026 | 5:25 PM Milan Centrale | 3h40 | 9:05 PM Milan Bergamo Orio al Serio Airport | 1 transfer | |
S5 TRENORD 24561 · Regionale TRENORD 2637+ ORIO AIRLINK BG028 | 6:11 PM Milano Forlanini | 4h39 | 10:50 PM Milan Bergamo Orio al Serio Airport | 2 transfers | |
S5 TRENORD 24561 · Regionale TRENORD 2637+ ORIO AIRLINK BG028 | 6:18 PM Segrate station | 4h32 | 10:50 PM Milan Bergamo Orio al Serio Airport | 2 transfers | |
S9 TRENORD 24966 · Regionale TRENORD 2637+ ORIO AIRLINK BG028 | 6:21 PM Milano Forlanini | 4h29 | 10:50 PM Milan Bergamo Orio al Serio Airport | 2 transfers | |
Regionale TRENORD 2637+ ORIO AIRLINK BG028 | 6:25 PM Milan Centrale | 4h25 | 10:50 PM Milan Bergamo Orio al Serio Airport | 1 transfer | |
S5 TRENORD 24573 · Regionale TRENORD 2643+ ORIO AIRLINK BG030 | 9:11 PM Milano Forlanini | 4h04 | 1:15 AM Milan Bergamo Orio al Serio Airport | 2 transfers | |
S5 TRENORD 24573 · Regionale TRENORD 2643+ ORIO AIRLINK BG030 | 9:18 PM Segrate station | 3h57 | 1:15 AM Milan Bergamo Orio al Serio Airport | 2 transfers | |
S9 TRENORD 24978 · Regionale TRENORD 2643+ ORIO AIRLINK BG030 | 9:21 PM Milano Forlanini | 3h54 | 1:15 AM Milan Bergamo Orio al Serio Airport | 2 transfers | |
Regionale TRENORD 2643+ ORIO AIRLINK BG030 | 9:25 PM Milan Centrale | 3h50 | 1:15 AM Milan Bergamo Orio al Serio Airport | 1 transfer | |
S5 TRENORD 24577 · Regionale TRENORD 2645+ ORIO AIRLINK BG002 | 10:11 PM Milano Forlanini | 5h59 | 4:10 AM Milan Bergamo Orio al Serio Airport | 2 transfers | |
S5 TRENORD 24577 · Regionale TRENORD 2645+ ORIO AIRLINK BG002 | 10:18 PM Segrate station | 5h52 | 4:10 AM Milan Bergamo Orio al Serio Airport | 2 transfers | |
S9 TRENORD 24982 · Regionale TRENORD 2645+ ORIO AIRLINK BG002 | 10:21 PM Milano Forlanini | 5h49 | 4:10 AM Milan Bergamo Orio al Serio Airport | 2 transfers | |
Regionale TRENORD 2645+ ORIO AIRLINK BG002 | 10:25 PM Milan Centrale | 5h45 | 4:10 AM Milan Bergamo Orio al Serio Airport | 1 transfer | |
S5 TRENORD 24513 · Regionale TRENORD 2613+ ORIO AIRLINK BG012 | 6:11 AM Milano Forlanini | 4h34 | 10:45 AM Milan Bergamo Orio al Serio Airport | 2 transfers | |
S5 TRENORD 24513 · Regionale TRENORD 2613+ ORIO AIRLINK BG012 | 6:18 AM Segrate station | 4h27 | 10:45 AM Milan Bergamo Orio al Serio Airport | 2 transfers | |
Regionale TRENORD 2613+ ORIO AIRLINK BG012 | 6:25 AM Milan Centrale | 4h20 | 10:45 AM Milan Bergamo Orio al Serio Airport | 1 transfer | |
S5 TRENORD 24521 · Regionale TRENORD 2617+ ORIO AIRLINK BG014 | 8:11 AM Milano Forlanini | 4h24 | 12:35 PM Milan Bergamo Orio al Serio Airport | 2 transfers | |
S5 TRENORD 24521 · Regionale TRENORD 2617+ ORIO AIRLINK BG014 | 8:18 AM Segrate station | 4h17 | 12:35 PM Milan Bergamo Orio al Serio Airport | 2 transfers | |
S9 TRENORD 24926 · Regionale TRENORD 2617+ ORIO AIRLINK BG014 | 8:21 AM Milano Forlanini | 4h14 | 12:35 PM Milan Bergamo Orio al Serio Airport | 2 transfers | |
Regionale TRENORD 2617+ ORIO AIRLINK BG014 | 8:25 AM Milan Centrale | 4h10 | 12:35 PM Milan Bergamo Orio al Serio Airport | 1 transfer | |
S5 TRENORD 24525 · Regionale TRENORD 2619+ ORIO AIRLINK BG016 | 9:11 AM Milano Forlanini | 4h54 | 2:05 PM Milan Bergamo Orio al Serio Airport | 2 transfers | |
S5 TRENORD 24525 · Regionale TRENORD 2619+ ORIO AIRLINK BG016 | 9:18 AM Segrate station | 4h47 | 2:05 PM Milan Bergamo Orio al Serio Airport | 2 transfers | |
S9 TRENORD 24930 · Regionale TRENORD 2619+ ORIO AIRLINK BG016 | 9:21 AM Milano Forlanini | 4h44 | 2:05 PM Milan Bergamo Orio al Serio Airport | 2 transfers | |
Regionale TRENORD 2619+ ORIO AIRLINK BG016 | 9:25 AM Milan Centrale | 4h40 | 2:05 PM Milan Bergamo Orio al Serio Airport | 1 transfer | |
S5 TRENORD 24533 · Regionale TRENORD 2623+ ORIO AIRLINK BG018 | 11:11 AM Milano Forlanini | 4h09 | 3:20 PM Milan Bergamo Orio al Serio Airport | 2 transfers | |
S5 TRENORD 24533 · Regionale TRENORD 2623+ ORIO AIRLINK BG018 | 11:18 AM Segrate station | 4h02 | 3:20 PM Milan Bergamo Orio al Serio Airport | 2 transfers | |
S9 TRENORD 24938 · Regionale TRENORD 2623+ ORIO AIRLINK BG018 | 11:21 AM Milano Forlanini | 3h59 | 3:20 PM Milan Bergamo Orio al Serio Airport | 2 transfers | |
Regionale TRENORD 2623+ ORIO AIRLINK BG018 | 11:25 AM Milan Centrale | 3h55 | 3:20 PM Milan Bergamo Orio al Serio Airport | 1 transfer | |
S5 TRENORD 24537 · Regionale TRENORD 2625+ ORIO AIRLINK BG020 | 12:11 PM Milano Forlanini | 4h39 | 4:50 PM Milan Bergamo Orio al Serio Airport | 2 transfers | |
S5 TRENORD 24537 · Regionale TRENORD 2625+ ORIO AIRLINK BG020 | 12:18 PM Segrate station | 4h32 | 4:50 PM Milan Bergamo Orio al Serio Airport | 2 transfers | |
S9 TRENORD 24942 · Regionale TRENORD 2625+ ORIO AIRLINK BG020 | 12:21 PM Milano Forlanini | 4h29 | 4:50 PM Milan Bergamo Orio al Serio Airport | 2 transfers | |
Regionale TRENORD 2625+ ORIO AIRLINK BG020 | 12:25 PM Milan Centrale | 4h25 | 4:50 PM Milan Bergamo Orio al Serio Airport | 1 transfer | |
S5 TRENORD 24545 · Regionale TRENORD 2629+ ORIO AIRLINK BG006 | 2:11 PM Milano Forlanini | 4h24 | 6:35 PM Milan Bergamo Orio al Serio Airport | 2 transfers | |
S5 TRENORD 24545 · Regionale TRENORD 2629+ ORIO AIRLINK BG006 | 2:18 PM Segrate station | 4h17 | 6:35 PM Milan Bergamo Orio al Serio Airport | 2 transfers | |
S9 TRENORD 24950 · Regionale TRENORD 2629+ ORIO AIRLINK BG006 | 2:21 PM Milano Forlanini | 4h14 | 6:35 PM Milan Bergamo Orio al Serio Airport | 2 transfers | |
Regionale TRENORD 2629+ ORIO AIRLINK BG006 | 2:25 PM Milan Centrale | 4h10 | 6:35 PM Milan Bergamo Orio al Serio Airport | 1 transfer | |
This is the last train of the day. | |||||
Find all the dates and times for this journey
Compare bus and train prices over the next three weeks. See the best deals at a glance, find the lowest fares, and choose the option that fits your budget.
Trains from Milan Linate Airport to Milan Bergamo Orio al Serio Airport run on average 35 times per day, taking around 56m. Cheap train tickets for this journey start at $30 (€25) but you can travel from only $12 (€10) by bus.
The earliest train runs at 06:18, the last at 21:18. The fastest train covers the 25 miles (41 km) distance in 3h 57m.
Distance 25 miles (41 km) |
Average train duration 56m |
Cheapest ticket price $30 (€25) |
Trains per day 35 |
Fastest train 3h 57m |
First train 6:18 AM |
Last train 9:18 PM |
Cheapest Month May |
Cheapest Day Thu |
High Season Oct - Dec |
Low Season Jan - Mar |
Busiest Day Fri |
Least Busy Day Mon |
Discover the best of Milan Bergamo Orio al Serio Airport — top attractions, local food, transport tips, budget advice, and currency essentials. Plan your perfect Milan Bergamo Orio al Serio Airport trip today.
Bergamo’s premier art museum, known for its strong collection of Italian Renaissance and Baroque paintings. A top cultural stop near the airport area for travelers heading into Bergamo.
The Gallery of Modern and Contemporary Art in Bergamo, featuring changing exhibitions and a strong contemporary profile. Popular with visitors interested in current Italian and international art.
A history museum in Città Alta presenting Bergamo’s urban story through archaeological remains and multimedia displays. A solid choice for understanding the city beyond its scenic views.
Bergamo’s historic upper town, enclosed by Venetian walls and full of medieval streets, views and landmark buildings. This is the city’s essential area to explore on foot.
The elegant central square of Città Alta, often considered the symbolic heart of Bergamo. It is ideal for architecture, people-watching and classic city photos.
The Venetian walls surrounding the upper town, recognized by UNESCO and popular for scenic walks. They offer some of the best panoramic viewpoints in Bergamo.
Traditional stuffed pasta from Bergamo, usually filled with meat, cheese, and breadcrumbs, then dressed with butter, sage, and pancetta. It is one of the signature dishes of the area.
A hearty Bergamo and Alpine specialty made with cornmeal and buckwheat flour, enriched with butter and local cheeses. It is especially associated with the cuisine of the surrounding valleys.
A traditional pasta from the Bergamo province, shaped by hand and typically filled with cheese, breadcrumbs, butter, and herbs. It is valued as a distinctive local festive dish.
Renowned fine dining restaurant near Bergamo, celebrated for refined Italian cuisine, seafood specialties, and exceptional service in an elegant setting.
Historic traditional trattoria in Bergamo known for classic Bergamasque dishes such as casoncelli and polenta, with a warm and authentic atmosphere.
Well-known Bergamo restaurant serving regional cuisine and pizza, appreciated for its welcoming atmosphere and reliable local specialties.
Prices are typical for northern Italy. Coffee and snacks are reasonable, but airport meals cost more than in town.
Service is often included or covered by a coperto. Tipping is not required, but rounding up or leaving EUR 1-2 for good service is appreciated.
Official public transport app
Milan Bergamo Orio al Serio Airport -> Bergamo City Center
Find answers to the most common questions about traveling from Milan Linate Airport to Milan Bergamo Orio al Serio Airport 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 Bergamo Orio al Serio Airport, this guide helps you travel smarter and with confidence.

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