Milan to St. Moritz is about 170 km (105 mi) by road from the city centre, roughly three hours on a clear road by our routed estimate, and the St. Moritz tourist office gives the same "around three hours" for the drive from Milan. The road leaves the city north towards Lake Como, follows the lake to its northern end, climbs past Chiavenna into Switzerland through the Val Bregaglia and crosses the Maloja Pass, which stays open all year, into the lakes of the Upper Engadin.
The Milan route is not on the Elly8.net published price list, so the fare comes from the web booker: enter your Milan hotel or airport and your St. Moritz hotel, and you receive a fixed, all-in price per vehicle in US dollars before you pay. This guide covers the route, where to stop, the train alternative through Tirano, and what changes when you start from Malpensa or Linate rather than the city.
How long does it take to drive from Milan to St. Moritz?
About three hours on a clear road. Our routed estimates are about 170 km (105 mi) from central Milan, 173 km (108 mi) from Linate and 189 km (117 mi) from Malpensa to St. Moritz Dorf, each roughly three hours. Summer weekends, lake traffic and snow on the Maloja in winter can add time.
The drive divides into three parts: the motorway and expressway out of Milan to the lake, the lakeside and valley road north to Chiavenna, and the mountain road over the Maloja. Each part has its own pace, and the second is where traffic varies most, with weekend and summer lake traffic slowing the road along the eastern shore.
See St. Moritz prices and reserve
The route, stage by stage
| Stage | Routed distance | Clear-road time | What to expect |
|---|---|---|---|
| Central Milan to Lecco | About 70 km / 43 mi | About 1 h 10 min | Out of the city and north to the lake |
| Lecco to Chiavenna | About 66 km / 41 mi | About 1 h 10 min | Along Lake Como's eastern shore, then the valley |
| Chiavenna to the Maloja Pass | About 32 km / 20 mi | About 37 min | Into Switzerland and up the Val Bregaglia |
| Maloja to St. Moritz Dorf | About 17 km / 11 mi | About 19 min | Past Sils and Silvaplana along the lakes |
These are our routed estimates via Lecco for a clear road. The fastest routing from the city centre is slightly shorter, about 170 km in total.
Milan to the lake. Leaving the city, the road heads north towards Lecco, at the south-eastern tip of Lake Como. Hotel pickups in the centre are quickest early in the morning or after the morning rush.
Along the lake to Chiavenna. From Lecco, the road runs north along the eastern side of the lake to its northern end and on to Chiavenna, the last Italian town before the border.
Into Switzerland and over the Maloja. Beyond Chiavenna, the road enters Switzerland in the Val Bregaglia, known in German as the Bergell, and climbs to the Maloja Pass. Engadin Tourism's how-to-get-here page lists the Maloja, Julier and Ofen passes as open all year round, with the Albula and Flüela closing in winter. Keep passports handy for the border crossing.
The Engadin lakes. From the Maloja, the road drops gently to the lakes of Sils and Silvaplana and into St. Moritz. This last stretch, with the mountains reflected in the water, is one of the loveliest arrivals in the Alps.
Starting from Malpensa or Linate
Milan Malpensa (MXP). Malpensa, north-west of the city, is Milan's main long-haul airport. From there, our routed estimate to St. Moritz Dorf is about 189 km (117 mi) and just over three hours, avoiding central Milan. The chauffeur tracks your flight, waits in arrivals with a name board, and takes you straight north. See airport transfers and meet and greet.
Milano Linate (LIN). The city airport, east of the centre, handles many European connections. Linate to St. Moritz is about 173 km (108 mi) and roughly three hours by our routed estimate.
Il Caravaggio (BGY). If you are flying into Bergamo, enter it in the web booker; the route north to the lake is short from there.
All three are quoted in the web booker at a fixed price. For context only, the Elly8.net fares from Milan's airports to the city centre run from US$110 (Linate) to US$250 (Bergamo) in a business sedan, as shown on the Milan chauffeur page.
Stops worth making
Lake Como. The obvious stop. A coffee or lunch on the lake breaks the drive at the halfway point. If you want more than an hour by the water, the Lake Como car service page covers the lake towns, and you can combine a night on the lake with the onward drive the next day.
Chiavenna. The last Italian town before the border, at the foot of the pass, and a natural lunch stop in the old centre.
The Val Bregaglia. Engadin Tourism describes the Bergell as the birthplace, home and workplace of the Giacometti artists. Its stone villages are a quiet contrast to St. Moritz, and a short stop is easy to fit in.
Maloja and Sils. At the top of the pass, the Engadin opens out. Sils, a few minutes on, is a good last stop before town.
A short comfort stop is normal on a three-hour drive. For a longer stop, such as lunch at the lake, include it in your booker request so the timing and the fixed quote reflect it.
What the drive costs
Because Milan to St. Moritz is quoted rather than listed, the price depends on where you start and the vehicle you choose. Enter the pickup and drop-off in the web booker and you see an instant, fixed fare per vehicle in US dollars, all-in: chauffeur, vehicle, taxes, standard gratuity and meet and greet. Tolls and parking, where they arise, are billed at cost.
For scale only, the published Elly8.net fare for the similar three-hour drive from Zurich Airport to St. Moritz Dorf is US$745 in a business sedan, US$970 in a business SUV and US$1,940 in an Executive Sprinter. Your Milan quote is calculated for its own route and may differ.
Once you arrive, St. Moritz rates are published:
| St. Moritz service | Business Sedan | Business SUV | Executive Sprinter |
|---|---|---|---|
| Engadin Airport (Samedan) to St. Moritz Dorf | US$125 | US$165 | US$325 |
| By the hour, 3-hour minimum | US$100 per hour | US$125 per hour | US$200 per hour |
| Full-day chauffeur | US$740 | US$920 | US$1,475 |
| Evening out and event night | US$500 | US$625 | US$1,000 |
First Class Sedan and First Class SUV prices are on the St. Moritz chauffeur page. Rides in St. Moritz are operated by licensed, commercially insured local chauffeur partners vetted through the Limousine Worldwide network; Elly8.net takes the booking, fixes the price and runs the 24/7 desk.
The train alternative: Milan to Tirano and the Bernina line
There is a scenic rail route, and it deserves a fair hearing. Trenord runs direct trains from Milano Centrale to Tirano in about 2 hours 30 minutes, without changes, with 15 daily trains on its timetable summary and a second-class fare of €12.50. At Tirano, the Rhaetian Railway's Bernina line climbs over the Bernina Pass to St. Moritz; the Rhaetian Railway gives about 2 hours 15 minutes for St. Moritz to Tirano on the Bernina Express, over a UNESCO World Heritage line with the Brusio Circular Viaduct, the Palü Glacier and Lago Bianco along the way.
That makes the train about five hours with one main change at Tirano, against about three by car. For a couple with light bags who want the journey to be the day, it is a superb option. The railway warns that luggage space on the Bernina Express is limited and suggests its baggage delivery service for large pieces, and it strongly recommends seat reservations on the regional Bernina trains, at CHF 5 per person. Our St. Moritz train guide covers the Bernina and Glacier Express in more detail.
| Private car from central Milan | Train via Tirano | |
|---|---|---|
| Time | About 3 hours | About 2 h 30 min to Tirano, then about 2 h 15 min on the Bernina line |
| Changes | None | At least one, at Tirano |
| Price | Fixed per vehicle, quoted in the web booker | Per seat; Trenord €12.50 second class to Tirano, plus the Bernina fare |
| Luggage | SUV 6 bags; Sprinter 12 bags | Limited space on the Bernina Express |
| Best for | Families, skiers, groups, airport arrivals | Couples with light bags, rail enthusiasts |
A popular combination is to take the train one way and the car the other: the Bernina line up for the views, and the car down to Malpensa on departure day, timed to your flight.
Seasons and timing
Winter. The Maloja stays open, but snow can slow the climb from the Val Bregaglia, and the road is at its busiest on Saturdays, when chalets and hotels in the Engadin change guests. A Sunday or midweek arrival is usually calmer. The big winter weekends in St. Moritz, the Snow Polo World Cup and the bobsleigh World Cup in January and White Turf on the frozen lake on Sundays in February, fill hotels and cars across the valley; the St. Moritz chauffeur page lists the 2026 to 2027 dates. Book early for those weekends and add an hourly chauffeur for the event days.
Summer. Lake traffic is the main variable. On sunny weekends, the lakeside road north of Lecco can be slow, so an early start from Milan keeps the drive close to three hours.
Departure day. Driving back to Malpensa for a long-haul flight, the desk works back from the departure: about three hours on a clear road, more in snow or weekend traffic, plus the check-in time your airline recommends.
One trip, three stops: Milan, Lake Como and St. Moritz
Many North American visitors combine the city, the lake and the mountains in one trip, and the drive makes that easy because St. Moritz is at the top of the same road. A common pattern is two nights in Milan, two on Lake Como and the rest in St. Moritz. The Milan airports to the city centre are listed fares, from US$110 in a business sedan from Linate; Malpensa to Bellagio and the lake towns costs from US$320 in a business sedan to US$835 in an Executive Sprinter, as shown on the Lake Como car service page; and the onward leg from the lake to St. Moritz is quoted in the web booker. If you would rather stay in Milan, the Lake Como day trip package from the city costs from US$665 in a business sedan for eight hours.
Which vehicle, and who it suits
A Business Sedan or First Class Sedan seats three with two bags, enough for a couple. A Business SUV or First Class SUV seats up to six with six bags and is the usual choice for families or skiers. An Executive Sprinter seats up to twelve with twelve bags. Child seats are fitted on request. In winter, tell us how many ski and boot bags you have so the vehicle fits them comfortably. See Sprinter van with driver and city to city car service.
Coming from Zurich instead?
If you fly into Zurich, the drive is a similar three hours over the Julier Pass, with a published fare from US$745. Our Zurich to St. Moritz by private car guide covers that road, and the Zurich to St. Moritz train or private car comparison weighs the rail option from the north.
How booking works
- Pickup and drop-off. Enter your Milan hotel or airport, with your flight number, and your St. Moritz hotel.
- Vehicle. Choose a Business Sedan, Business SUV, First Class Sedan, First Class SUV or Executive Sprinter, and note ski bags and any planned stop.
- Reserve. The web booker shows a fixed fare; pay by card in US$ and confirmation arrives by email.
Cancellation is free more than 72 hours before pickup; 10% applies at 72 hours or less, 50% at 48 hours or less, and 100% at 24 hours or less or for a no-show, with refunds to the original card. See the cancellation policy.
Elly8.net books the car only; BookingWorldwide.net handles flights and hotels. Elly8.net is a member of LimousineWorldwide.Directory, LimousineAssociation.International, HotelsWorldwide.Directory and VacationsWorldwide.Directory.
Frequently asked questions
How far is St. Moritz from Milan?
About 170 km (105 mi) by road from central Milan, roughly three hours on a clear road by our routed estimate. From Malpensa it is about 189 km (117 mi) and from Linate about 173 km (108 mi). The St. Moritz tourist office also gives around three hours for the drive.
Which pass does the road from Milan use?
The Maloja Pass, reached through Chiavenna and the Val Bregaglia. Engadin Tourism lists the Maloja as open all year round, together with the Julier and Ofen passes. Snow can still slow the climb in winter, and the chauffeur plans the departure around the forecast.
How much is a private car from Milan to St. Moritz?
The route is quoted in the web booker rather than listed, so you see a fixed price per vehicle in US dollars before paying. For scale only, the published three-hour Zurich Airport to St. Moritz fare starts at US$745 in a business sedan.
Is the train from Milan to St. Moritz a good option?
For light travellers, yes. Trenord runs direct trains from Milano Centrale to Tirano in about 2 hours 30 minutes, and the Bernina line continues to St. Moritz in about 2 hours 15 minutes. Luggage space on the Bernina Express is limited, so families with skis usually prefer the car.
Can we stop at Lake Como on the way?
Yes. The road follows the lake's eastern shore, and a coffee or lunch stop fits naturally. Include a longer stop in your booker request so the timing and the fixed quote reflect it, or spend a night on the lake and continue the next day.
Will the chauffeur meet us at Malpensa?
Yes. The chauffeur tracks your flight, waits in arrivals with a name board and loads the bags, and complimentary waiting after a tracked landing covers delays at passport control or the baggage belt. If a connection is missed, the 24/7 desk moves the pickup.



























