- Summits
- Bernina Express
- From Milan
Bernina Express · day tripFrom Milan via Tirano
The Bernina Express does not run from Milan but from Tirano. Trenord’s regional train gets you there without changing in around two and a half hours – the rest is a question of timing.
- Milano Centrale → Tirano around 2 h 30
- Tirano → St. Moritz approx. 2 h 15
- Fare + reservation CHF 33 + 32
- First train from Milan
- 06:20
- Bernina Express from Tirano
- 10:06
- ID
- passport or ID card
Checked on 21 September 2026 · Sources: Trenord, Rhaetian Railway · Photo: Leonhard Lenz, CC0
From Milan to Tirano: one train, no changes
Tirano lies in Valtellina, at the Italian end of the Bernina line. Trenord runs the route direct from Milano Centrale, by its own account in around 2 hours 30 minutes, about 15 times a day and almost hourly. The first train leaves Milan at 06:20, the last at 21:20. The 170 kilometres cost from €12.50 in 2nd class.
- Journey time
- 2:30 h, around
- Price
- €12.50 from
- Trains
- 15 a day, around
- First from Milan
- 06:20
- Distance
- 170 km
Tickets are available on trenord.it, in the Trenord app, from ticket machines and at the ticket office. In Tirano you change from the Italian regional train to the red train of the Rhaetian Railway (RhB). You cross the border into Switzerland on the journey: take your passport or identity card. From there on, fares are in Swiss francs (CHF), not euros.
Rule of thumb: For the 10:06 Bernina Express from Tirano you need the first train from Milan at 06:20. Any later one turns the day trip into a tight squeeze.
Tirano – St. Moritz: timetable for the day trip
From Tirano the Bernina Express runs to St. Moritz in approx. 2 hours 15 minutes – over the Brusio Spiral Viaduct, through Val Poschiavo and past Lago Bianco at 2,253 m. In the summer timetable (2 May to 25 October 2026) there are three trains to St. Moritz and two on to Chur. For a day out from Milan, these fit:
| Train | Dep. | Arr. | Runs |
|---|---|---|---|
| PE 972 Tirano → St. Moritz | 10:06 | 12:35 | summer and winter, daily |
| PE 974 Tirano → St. Moritz | 13:17 | 15:45 | summer only |
| PE 973 St. Moritz → Tirano | 13:17 | 15:31 | summer only |
| PE 975 St. Moritz → Tirano | 15:30 | 18:00 | winter only |
| PE 977 St. Moritz → Tirano | 16:14 | 18:39 | daily in summer, weekends only in winter |
With PE 972 out and PE 973 back you have 42 minutes in St. Moritz – enough for a coffee at the station, not for the town. With PE 977 it is a good three and a half hours. When the last train from Tirano to Milan leaves after that is in the Trenord timetable; check it before you book the late return. You will find all trains at a glance on the page about the Bernina Express route.
What the day costs if you organise it yourself
The Tirano – St. Moritz fare is CHF 33 each way in 2nd class (1st class CHF 57). On the Bernina Express the compulsory seat reservation comes on top: CHF 32 on the short route, all year, and for each train separately. The Swiss Half Fare Card (Halbtax), GA, Swiss Travel Pass and Eurail and Interrail passes apply to the fare, not to the reservation.
| Option | Trenord there + back | Bernina line |
|---|---|---|
| Bernina Express there and back | €25 | CHF 130 |
| Bernina Express out, regional train back | €25 | CHF 98 |
| Regional train there and back | €25 | CHF 66 |
The Rhaetian Railway’s regional trains run the same route over the same pass. They have no panoramic cars, no catering and no infotainment – but the reservation is optional and costs CHF 5. More on fares and passes is on the page Bernina Express prices, on booking at Bernina Express tickets.
Honestly: Two CHF 32 reservations for the same route on the same day is a lot of money for a bigger window. Travel one direction in the panoramic car and the other on the regional train – the route, the pass and the lake are the same.
Do it yourself or take a day tour from Milan?
Organising it yourself means: three bookings (Trenord, ticket, reservation), an early alarm, and you carry the risk if a connection falls through. In return you decide how long you stay up there. The day tours from Milan take the journey and the booking off your hands. How they split the day between coach and train, and whether the train is the Bernina Express with panoramic cars or a regional train (“Red Train”), is in the description of each tour – read it before booking.
“I only have one day and want to fit in Lake Como as well.”From Milan: Lake Como Cruise, St. Moritz & Bernina Red Train
Honestly: The most-booked tour, but also the most expensive of the three. Three destinations in one day mean little time in each place. If it is mainly the train ride you want, the next one serves you better.
“I don’t want to be at the station at six and book three tickets.”From Milan to the Swiss Alps: Bernina Red Train & St. Moritz
Honestly: In price this is close to the self-organised trip with the panoramic car in both directions. It is not worth it if you have a Swiss Travel Pass or a Swiss Half Fare Card – then you travel considerably cheaper on your own.
“Can it be done for under 100 euros?”From Milan: St Moritz & Alps Day Trip with Bernina Red Train
Honestly: “Red Train” is the name tour operators use for the red trains of the Bernina line – it does not have to be the Bernina Express with panoramic cars. For the price that is fine. If the panoramic car matters to you, ask beforehand.
Bernina Express Chur – Tirano: the long version
If you do not have to get back to Milan, travel from Tirano right through to Chur: approx. 4 hours, CHF 66 in 2nd class (1st class CHF 113), reservation CHF 44 in high season and CHF 40 in low season. From Tirano this works at 08:06 (summer only, arrives Chur 12:31) and at 14:24 (all year, arrives Chur 18:31). For the early train you have to stay overnight in Tirano – you cannot get there from Milan by that time.
Everything about the journey itself, about seats and about whether the extra cost is worth it is on the main Bernina Express page. If you are travelling in winter, read Bernina Express in winter first: fewer trains run then.
Where the figures come from
| Detail | Source | Checked |
|---|---|---|
| Milan – Tirano: journey time, price from €12.50, 170 km, around 15 trains, first and last train, points of sale | Trenord, Milano Centrale – Tirano line | 21 September 2026 |
| Fares, seat reservation, valid passes, journey times, summer/winter timetable 2026, Lago Bianco 2,253 m | Rhaetian Railway, Bernina Express | 21 September 2026 |
| Regional trains on the Bernina line, optional reservation CHF 5 | Rhaetian Railway, reservation on the Bernina line | 21 September 2026 |
| Passport or ID card for entering Italy | Switzerland Tourism, Bernina Express | 21 September 2026 |
| Tour titles, prices, ratings | GetYourGuide, partner data | 21 September 2026 |