• Our partners include:

  • RailEurope
  • Deutsche Bahn
  • Trenitalia
  • SNCF
  • Flixbus
  • RENFE
  • Ouibus
  • BlaBlaCar
  • Booking.com
  • Skyscanner

There are 6 ways to get from Canton of St. Gallen to Milan by train, bus, car or plane

Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2rio's travel planner.

Recommended option

Train  •  5 h 13 min

  1. Take the train from St. Gallen to Zürich HB 5 / ...
  2. Take the train from Zuerich Hb to Milano Centrale Ec / ...

$78 - $122

Cheapest option

Bus RegioJet  •  5 h 27 min

  1. Take the bus from St.Gallen, Lagerstrasse to Milan, Terminal Bus di Lampugnano RegioJet

$13 - $17

4 alternative options

Bus Gruppo Di Maio  •  6 h 34 min

  1. Take the bus from St. Gallen to Grandate - Stazione

$23 - $38

Drive  •  3 h 42 min

  1. Drive from Sankt Gallen to Milan 208.1 miles

$50 - $75

Train, fly to Milan Malpensa  •  3 h 38 min

  1. Take the train from Rapperswil to Zürich HB
  2. Fly from Zurich (ZRH) to Milan Malpensa (MXP) ZRH - MXP

$111 - $330

Train, fly to Lugano  •  5 h 4 min

  1. Take the train from Rapperswil to Zürich HB
  2. Fly from Zurich (ZRH) to Lugano (LUG) ZRH - LUG
  3. Take the train from Lugano to Milano Centrale

$125 - $321

Questions & Answers

The cheapest way to get from Canton of St. Gallen to Milan is to bus which costs SFr 13 - SFr 18 and takes 5 h 27 min.

More details

The quickest way to get from Canton of St. Gallen to Milan is to train and fly which costs SFr 110 - SFr 330 and takes 3 h 38 min.

More details

No, there is no direct bus from Canton of St. Gallen to Milan. However, there are services departing from St.Gallen, Lagerstrasse and arriving at conciliazione m1 via lampugnano m1. The journey, including transfers, takes approximately 5 h 27 min.

More details

No, there is no direct train from Canton of St. Gallen to Milan. However, there are services departing from St. Gallen and arriving at Milano Centrale via Zuerich Hb. The journey, including transfers, takes approximately 5 h 13 min.

More details

The distance between Canton of St. Gallen and Milan is 188 km. The road distance is 332.9 km.

Get driving directions

The best way to get from Canton of St. Gallen to Milan without a car is to train which takes 5 h 13 min and costs SFr 75 - SFr 130.

More details

It takes approximately 5 h 13 min to get from Canton of St. Gallen to Milan, including transfers.

More details

Canton of St. Gallen to Milan bus services, operated by RegioJet, depart from St.Gallen, Lagerstrasse station.

More details

Canton of St. Gallen to Milan train services, operated by Swiss Railways (SBB/CFF/FFS), depart from St. Gallen station.

More details

The best way to get from Canton of St. Gallen to Milan is to train which takes 5 h 13 min and costs SFr 75 - SFr 130. Alternatively, you can bus, which costs SFr 13 - SFr 18 and takes 5 h 27 min.

Mode details

Map of how to get from Canton of St. Gallen to Milan.
Launch map view
  • Distance: 117.8 miles
  • Duration: 5 h 13 min

What companies run services between Canton of St. Gallen, Switzerland and Milan, Italy?

You can take a train from Sankt Gallen to Milan via Zürich HB and Zuerich Hb in around 5 h 13 min. Alternatively, RegioJet operates a bus from Sankt Gallen to Milan once a week. Tickets cost $12 - $16 and the journey takes 5 h.

Airlines
Swiss
Website
swiss.com
Flights from Zurich to Milan Malpensa
Ave. Duration
53 min
When
Every day
Estimated price
$90 - $700
Flights from Zurich to Lugano
Ave. Duration
45 min
When
Every day
Estimated price
$75 - $310
Train operators
Swiss Railways (SBB/CFF/FFS)

The national railway company of Switzerland, Swiss Railways operates trains throughout the country and adjacent European nations including Germany, France, Italy and Austria. Tickets are sold in two classes - First and Second - with most long-distance trains offering a bistro car serving beverages and snacks. Individual tickets can be bought easily at stands, while a variety of travel passes are on offer to suit different travel needs. Swiss Railways codeshares with American Airlines and Swiss International Air Lines out of Zurich International Airport.

Contact Details
Website
sbb.ch
Train from St. Gallen to Zürich HB
Ave. Duration
1 h 11 min
Frequency
Every 30 minutes
Estimated price
$30 - $60
Website
fahrplan.sbb.ch
Schedules at
fahrplan.sbb.ch
Train from Zürich HB to Milano Centrale
Ave. Duration
4 h 3 min
Frequency
Every 2 hours
Estimated price
$65 - $120
Website
fahrplan.sbb.ch
Schedules at
fahrplan.sbb.ch
Train from Rapperswil to Zürich HB
Ave. Duration
36 min
Frequency
Every 15 minutes
Estimated price
$19 - $35
Website
fahrplan.sbb.ch
Schedules at
fahrplan.sbb.ch
Train from Lugano to Milano Centrale
Ave. Duration
1 h 16 min
Frequency
Hourly
Estimated price
$22 - $40
Website
fahrplan.sbb.ch
Schedules at
fahrplan.sbb.ch
Trenitalia Eurocity

The primary train operator in Italy, Trenitalia was created in the year 2000. Trenitalia offers national rail connections in Italy as well as international connections to Austria, France, Germany and Switzerland. The company operates regional and long-distance trains, as well as high-speed trains called Frecce that travel on specialised tracks on speeds of up to 360km/h. Trenitalia tickets are available online, in stations across the country or from many travel agents that offer bookings.

Contact Details
Phone
+39 06 68475475
Website
trenitalia.com
Train from Zuerich Hb to Milano Centrale
Ave. Duration
3 h 26 min
Frequency
Every 3 hours
Estimated price
$45 - $65
Website
orario.trenitalia.com
Train from Lugano to Milano Centrale
Ave. Duration
1 h 15 min
Frequency
Every 4 hours
Estimated price
$21 - $30
Website
orario.trenitalia.com
Bus operators
RegioJet
Phone
+420 542 42 42 42
Email
info@regiojet.cz
Website
regiojet.com
Bus from St.Gallen, Lagerstrasse to Milan, Terminal Bus di Lampugnano
Ave. Duration
5 h
Frequency
Once a week
Estimated price
$12 - $16
Website
regiojet.com
Gruppo Di Maio
Phone
+39 0827 34 117
Email
info@gruppodimaio.it
Website
gruppodimaio.it
Bus from St. Gallen to Grandate - Stazione
Ave. Duration
5 h 23 min
Frequency
Once a week
Estimated price
$18 - $26
Schedules at
gruppodimaio.it

Want to know more about travelling around Italy

Rome2rio's Travel Guide series provide vital information for the global traveller. Filled with useful and timely travel information, the guides answer all the hard questions - such as 'How do I buy a ticket?', 'Should I book online before I travel? ', 'How much should I expect to pay?', 'Do the trains and buses have Wifi?' - to help you get the most out of your next trip.

More Questions & Answers

The quickest flight from Zurich Airport to Milan Malpensa Airport is the direct flight which takes 50 min.

Search flights

Canton of St. Gallen to Milan bus services, operated by RegioJet, arrive at Milan, Terminal Bus di Lampugnano station.

More details

Canton of St. Gallen to Milan train services, operated by Trenitalia Eurocity, arrive at Milano Centrale station.

More details

Yes, the driving distance between Canton of St. Gallen to Milan is 333 km. It takes approximately 3 h 42 min to drive from Canton of St. Gallen to Milan.

Get driving directions

Swiss offers flights from Zurich Airport to Milan Malpensa Airport.

Search flights

There are 4123+ hotels available in Milan. Prices start at $62 USD per night.

More details