Travel Information
Compare train and bus for St Gallen to Milan
Omio recommends booking the train as it is the most popular option from St Gallen to Milan among Omio's users. If you are prioritising price take the bus with prices starting from $24. For those with little time consider booking a train which can get you there in 5h 46m. The ticket price range depends on the travel mode: a bus costs an average of $24, and a train costs an average of $229.
Distance: 135 miles (218 km)
Compare train with
Most popular Train | Bus | Driving |
|---|---|---|
$229 Average price | $43 Average price Cheapest | $71 Average price (fuel + tolls) |
6h 16m Average total duration Fastest 5h 46m Onboard + 30m Additional time* | 6h 40m Average total duration 6h 10m Onboard + 30m Additional time* | 3h 44m Average total duration (door-to-door) |
Direct Options | Direct Options | Direct Options |
This is compared to other travel options from St Gallen to Milan:
A bus is $186 (€149) less than a train for this route with tickets for a train from St Gallen to Milan costing on average $229 (€183).
Other travel options to Milan take longer:
Bus takes on average 6h 10m.
Tickets start at around $229 (€183) compared to roughly $71 (€57) in fuel and tolls — a saving of about $-157.88 (€-125.98). The journey takes 5h 46m versus 3h 44m 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.
Compare prices and tickets St Gallen to Milan by train or bus
Compare train and bus 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.
May 12
May 13
May 14
May 15
May 16
May 17
May 18
Journey information
Overview: Train from St Gallen to Milan
Trains from St Gallen to Milan run on average 12 times per day, taking around 5h 46m. Cheap train tickets for this journey start at $229 (€183) but you can travel from only $24 (€19) by bus.
The earliest train runs at 04:37, the last at 22:05. The fastest train covers the 135 miles (218 km) distance in 4h 46m.
Distance 135 miles (218 km) |
Average train duration 5h 46m |
Cheapest ticket price $229 (€183) |
Trains per day 12 |
Fastest train 4h 46m |
First train 4:37 AM |
Last train 10:05 PM |
Train companies: Swiss Federal Railways (SBB CFF FFS), Südostbahn from St Gallen to Milan trainsSwiss Federal Railways (SBB CFF FFS), Südostbahn trains will get you between St Gallen and Milan from $24 (€19). With over 1000 travel companies on Omio, you can find the best train times and tickets for your trip.
Swiss Federal Railways (SBB CFF FFS)
Südostbahn
FAQs: Trains from St Gallen to Milan
Find answers to the most common questions about traveling from St Gallen 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.

More options for your journey from St Gallen to Milan
Here are some other resources that might have the information you need
