- Must visit
Pinacoteca di Brera
One of Italy’s top art museums, featuring masterpieces by Mantegna, Bellini, Raphael, Caravaggio, and Piero della Francesca.
Cheapest price on Sep 20
$75
Average ticket price on Sep 20
$114
Fastest journey on Sep 20
16 h 40 m
Average journey duration on Sep 20
17 h 36 m
Buses on Sep 20
10
Distance
965 km
The best way to find a cheap bus ticket from Villa San Giovanni to Milan is to book your journey as far in advance as possible and to avoid traveling at rush hour.
The average ticket from Villa San Giovanni to Milan will cost around $114 if you buy it on the day, but the cheapest tickets can be found for only $75.
On Sun, Sep 20, we found 10 buses from Villa San Giovanni to Milan, including 4 direct services.
On Sun, Sep 20 the direct buses cover the 965 km distance in an average of 17 h 36 m but if you time it right, some buses will get you there in just 16 h 40 m .
On Sun, Sep 20 the slowest buses will take 18 h 10 m and usually involve a change or two along the way, but you might be able to save a few pennies if you’re on a budget.
FlixBus · FlixBus · FlixBus
2126
FlixBus
FlixBus · FlixBus
FlixBus · FlixBus
FlixBus
FlixBus · FlixBus
FlixBus
FlixBus
2126Omio recommends booking the flight as it is the most popular option from Villa San Giovanni to Milan among Omio's users. If you are prioritising price, take the bus, with an average ticket price of $116 For those with little time, consider booking a flight, which has an average total journey time of 4h 15m. If you are seeking to minimise your carbon footprint, the train is your best option, with estimated CO2 emissions of 0.3 - 0.9kg. Average ticket prices depend on the travel mode: a bus costs an average of $116, while a flight costs an average of $275.
Distance: 599 miles (965 km)
| Bus | Most popular Flight | Train | Driving |
|---|---|---|---|
$116 Average price Cheapest | $275 Average price | $168 Average price | $339 Average price (fuel + tolls) |
18h 3m Average total duration 17h 33m Onboard + 30m Additional time* | 4h 15m Average total duration Fastest 2h 15m Onboard + 2h 0m Additional time* | 12h 7m Average total duration 11h 37m Onboard + 30m Additional time* | 11h 40m Average total duration (door-to-door) |
1.0 - 2.4kg CO2 emissions | 2.9 - 5.8kg CO2 emissions | 0.3 - 0.9kg CO2 emissions Lowest | - CO2 emissions |
![]() Most popular bus company | ![]() Most popular airline | ![]() Most popular train company | Your own car or car rental |
Direct Options | Direct Options | Direct Options | Direct Options |
Additional time: Average total travel duration to departure point, security checks and transfers.
This is compared to other travel options from Villa San Giovanni to Milan:
A bus is $53 less than a train for this route with tickets for a train from Villa San Giovanni to Milan costing on average $168.
A bus is $159 less than a flight for this route with tickets for a flight from Villa San Giovanni to Milan costing on average $275.
Other travel options to Milan take longer:
Train takes on average 11h 37m.
Bus takes on average 17h 33m.
Tickets start at around $116 compared to roughly $339 in fuel and tolls — a saving of about $223. The journey takes 17h 33m versus 11h 40m by car, so you'll arrive a bit later, but you can use the time productively rather than spending it behind the wheel. No parking to sort, no fuel stops, and most coaches have Wi-Fi and power outlets.
Direct services are operated by FlixBus, Itabus, Autoservizi Salemi, BlaBlaCar, Lirosi Autoservizi.
Driving is worth considering if you're on a tight schedule, travelling as a group (where fuel costs split several ways), or want the flexibility to stop along the way.
| Operator | Departure Time | Arrival Time | Duration | Departure days | Cheapest price |
|---|---|---|---|---|---|
Operator FlixBus | Departure Time 02:25AM | Arrival Time 08:55PM | Duration 18h30 | Departure days Mon, Wed, Thu, Fri, Sat, Sun | Cheapest price $61 |
Operator FlixBus | Departure Time 11:45AM | Arrival Time 11:55AM | Duration 24h10 | Departure days Mon, Wed, Thu, Fri, Sat, Sun | Cheapest price $54 |
Operator FlixBus | Departure Time 07:05PM | Arrival Time 11:45AM | Duration 16h40 | Departure days Tue | Cheapest price $71 |
Operator FlixBus | Departure Time 08:05PM | Arrival Time 12:45PM | Duration 16h40 | Departure days Tue | Cheapest price $45 |
Operator Itabus | Departure Time 08:30PM | Arrival Time 02:40PM | Duration 18h10 | Departure days Tue | Cheapest price $110 |
Operator FlixBus | Departure Time 09:05PM | Arrival Time 02:35PM | Duration 17h30 | Departure days Mon, Wed, Thu, Fri, Sat, Sun | Cheapest price $56 |
Operator Itabus | Departure Time 09:30PM | Arrival Time 03:40PM | Duration 18h10 | Departure days Tue | Cheapest price $65 |
Operator FlixBus | Departure Time 10:25PM | Arrival Time 05:55PM | Duration 19h30 | Departure days Mon, Wed, Thu, Fri, Sat, Sun | Cheapest price $66 |
Operator Itabus | Departure Time 10:30PM | Arrival Time 04:40PM | Duration 18h10 | Departure days Mon, Wed, Thu, Fri, Sat, Sun | Cheapest price $69 |
Operator Salemi | Departure Time 10:30PM | Arrival Time 01:50PM | Duration 15h20 | Departure days Mon, Wed, Sat | Cheapest price $98 |
Operator Frecciarossa | Departure Time 11:20PM | Arrival Time 01:25PM | Duration 14h05 | Departure days Mon, Thu | Cheapest price $183 |
The table below shows live departures for Villa San Giovanni to Milan buses for today, Saturday, September 19. You can also manually refresh the results below to see updated bus journeys.
| Provider | Departs | Duration | Arrives | Transfers | Tickets |
|---|---|---|---|---|---|
FlixBus · FlixBus · FlixBus | 11:45 AM Villa San Giovanni, Stazione F.S. | 24h10 | 11:55 AM Milano, Milan Linate Airport | 2 transfers | |
FlixBus | 11:45 AM Villa San Giovanni, Stazione F.S. | 18h10 | 5:55 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 11:45 AM Villa San Giovanni, Stazione F.S. | 17h30 | 5:15 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
FlixBus · FlixBus | 9:05 PM Villa San Giovanni, Stazione F.S. | 17h30 | 2:35 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 transfer | |
FlixBus | 9:05 PM Villa San Giovanni, Stazione F.S. | 16h40 | 1:45 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus · FlixBus | 10:25 PM Villa San Giovanni, Stazione F.S. | 20h05 | 6:30 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 transfer | |
FlixBus · FlixBus | 10:25 PM Villa San Giovanni, Stazione F.S. | 18h45 | 5:10 PM Milano, Autostazione Lampugnano | 1 transfer | |
2126 | 10:30 PM Villa San Giovanni, Stazione F.S. | 18h10 | 4:40 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
S202 · 700 | 10:30 PM Villa San Giovanni, Stazione F.S. | 15h20 | 1:50 PM Milano, Autostazione Lampugnano | 1 transfer | |
S202 · 700 | 10:30 PM Villa San Giovanni, Stazione F.S. | 14h40 | 1:10 PM Milano, San Donato M3 | 1 transfer | |
FlixBus · FlixBus | 2:25 AM Villa San Giovanni, Stazione F.S. | 18h30 | 8:55 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 transfer | |
FlixBus · FlixBus | 2:25 AM Villa San Giovanni, Stazione F.S. | 19h15 | 9:40 PM Milano, Autostazione Lampugnano | 1 transfer | |
This is the last bus of the day. | |||||
Find all the dates and times for this journey
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.
Buses from Villa San Giovanni to Milan run on average 11 times per day, taking around 17h 33m. Cheap bus tickets for this journey start at $24 if you book in advance.
There are 4 buses per day. The earliest bus runs at 00:06, the last at 23:45. The fastest bus covers the 599 miles (965 km) distance in 14h 40m.
Distance 599 miles (965 km) |
Average bus duration 17h 33m |
Cheapest ticket price $24 |
Buses per day 11 |
Direct buses 4 |
Fastest bus 14h 40m |
First bus 12:06 AM |
Last bus 11:45 PM |
Cheapest Month Mar |
Cheapest Day Thu |
High Season Jul - Sep |
Low Season Apr - Jun |
Busiest Day Wed |
Least Busy Day Mon |
Best time to book 14 days |
Discover the best of Milan — top attractions, local food, transport tips, budget advice, and currency essentials. Plan your perfect Milan trip today.
One of Italy’s top art museums, featuring masterpieces by Mantegna, Bellini, Raphael, Caravaggio, and Piero della Francesca.
This contemporary art museum near Porta Romana presents rotating exhibitions in a striking former industrial distillery complex.
Italy’s leading science museum is set in a former monastery and features Leonardo galleries, trains, aircraft, and a submarine.
Milan’s central square frames the cathedral and major civic buildings, making it the city’s essential meeting point and photo stop.
This artistic district offers charming lanes, Brera atmosphere, boutiques, and easy access to galleries and evening strolls.
A large landscaped park behind the castle, perfect for walks, skyline views, and reaching landmarks like the Arch of Peace.
Saffron risotto cooked with butter, stock and cheese. It is Milan's signature dish, linked to the city's love of rich northern Italian rice cookery.
Breaded veal cutlet fried in butter until golden. A classic Milanese main, prized for its simple preparation and long-standing local tradition.
Slow-braised veal shanks with vegetables, wine and broth, often finished with gremolata. A hearty Lombard specialty commonly paired with risotto.
Three-Michelin-star fine dining by Enrico Bartolini in MUDEC. Expect refined Italian tasting menus in a polished contemporary setting.
Historic Milanese restaurant near the Duomo, famous for risotto and cotoletta. Traditional, elegant rooms and a strong local culinary identity.
Long-running local favorite for classic Milanese cuisine, especially risotto and ossobuco. Warm, old-school atmosphere in the Brera area.
Moderate for Western Europe. Hotels and central dining can be pricey, but transit is affordable and budget meals, aperitivo deals, and local cafes help keep daily costs reasonable.
Tipping is modest. Service may be included. Round up or leave €1-2 at cafes, 5-10% for good restaurant service, and round up taxi fares.
Official public transport app
Orio al Serio, Milan Bergamo Airport (Bus station) -> Milano Centrale, Milan
Find answers to the most common questions about traveling from Villa San Giovanni to Milan by bus. 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 bus, the cheapest option, or tips for making the most of your visit at Milan, this guide helps you travel smarter and with confidence.

Most Villa San Giovanni to Milan buses use the Villa San Giovanni, Stazione F.S. to Milano, Autostazione Lampugnano station pair, with some services arriving at Milano, San Donato - Settore B (Viale Giuseppe Impastato). Use this guide to compare Villa San Giovanni and Milan bus stations on this route, check city-centre transport, alongside checking practicalities like bus station facilities and services.
Milano, Autostazione Lampugnano is 5 km from Milan city centre. Public transport options include:
Milano, Autostazione Lampugnano has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.
Food options include: Cafeteria Lampugnano (in the station), Trattoria Milano (0.5 km), Pizza Express (0.7 km).
Free Wi-Fi. ATMs are located near the main entrance.
Ticket office support is available at Milano, Autostazione Lampugnano.
Available at Milano, Autostazione Lampugnano: Parking, Taxis, WC.
Accessibility facilities are available at Milano, Autostazione Lampugnano: Elevators, ramps.
Milano, San Donato - Settore B (Viale Giuseppe Impastato) is 6 km from Milan city centre. Public transport options include:
Milano, San Donato - Settore B (Viale Giuseppe Impastato) has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.
Food options include: Cafeteria Italiana (in the station), Fast Food Express (in the station), Trattoria Milano (0.5 km).
Free Wi-Fi. ATMs are located near the main entrance for cash withdrawals.
Ticket office support is available at Milano, San Donato - Settore B (Viale Giuseppe Impastato).
Available at Milano, San Donato - Settore B (Viale Giuseppe Impastato): Parking, Taxis, WC.
Accessibility facilities are available at Milano, San Donato - Settore B (Viale Giuseppe Impastato): Elevators, ramps.
Here are some other resources that might have the information you need