The average train between Oleggio and Milan takes 1h 34m and the fastest train takes 1h 17m. The train service runs several times per day from Oleggio to Milan. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Trains run every 4 hours between Oleggio and Milan. The earliest departure is at 7:12 AM in the morning, and the last departure from Oleggio is at 9:32 PM which arrives into Milan at 10:49 PM. All services require a transfer, and take on average 1h 34m. The schedules shown below are for the next available departures.

1h 37m • 1 change
1h 37m • 1 change
1h 37m • 1 change
1h 37m • 1 change
1h 37m • 1 change
1h 37m • 1 change
1h 37m • 1 change
1h 37m • 1 change
1h 17m • 1 change
1h 17m • 1 change
1h 17m • 1 change
1h 17m • 1 change
1h 37m • 1 change
1h 37m • 1 change
1h 37m • 1 change
1h 37m • 1 change
1h 37m • 1 change
1h 37m • 1 change
1h 37m • 1 change
1h 37m • 1 change
1h 37m • 1 change
1h 37m • 1 change
1h 37m • 1 change
1h 37m • 1 changeWant to know about travelling from Oleggio to Milan? We have put together a list of the most frequently asked questions from our users such as: What is the cheapest mode of transport? What is the quickest option? How much do tickets usually cost? and many more.
No, there is no direct train from Oleggio to Milan. However, there are services departing from Oleggio station and arriving at Milano Centrale station via Novara station. The journey, including transfers, takes approximately 1h 34m.
Oleggio to Milan train services, operated by Trenitalia, depart from Oleggio station.
Oleggio to Milan train services, operated by Trenitalia, arrive at Milano Centrale station.
Book your Oleggio to Milan train tickets online with Omio.
The distance between Oleggio and Milan is 45.5 km. The road distance is 57 km.
You can take a train from Oleggio to Milano Centrale via Novara in around 1h 43m.