- Must visit
Pinacoteca di Brera
One of Italy’s top art museums, featuring masterpieces by Mantegna, Bellini, Raphael, Caravaggio, and Piero della Francesca.
Flights from Charleroi to Milan depart on average 56 times per day, taking around 1h 30m. Cheap flight tickets for this journey start at $24 (€20) if you book in advance.
There are 13 flights per day. The earliest flight runs at 05:45, the last at 23:55. The fastest flight covers the 406 miles (654 km) distance in 1h 25m. January is the cheapest month to fly.
Distance 406 miles (654 km) |
Average flight duration 1h 30m |
Cheapest ticket price $24 (€20) |
Flights per day 56 |
Direct flights 13 |
Fastest flight 1h 25m |
First flight 5:45 AM |
Last flight 11:55 PM |
Cheapest Month Jan |
Cheapest Day Sat |
High Season Apr - Jun |
Low Season Jul - Sep |
Busiest Day Mon |
Least Busy Day Wed |
Best time to book 28 days |
Cheapest price
$60
Average price
$518
Fastest journey
1 h 25 m
Average duration
1 h 25 m
Flights per day
56
Distance
654 km
The best way to find a cheap flight ticket from Charleroi to Milan is to book your journey as far in advance as possible and to avoid traveling at rush hour.
The average ticket from Charleroi to Milan will cost around $518 if you buy it on the day, but the cheapest tickets can be found for only $60.
Of the 56 flights that leave Charleroi for Milan onTue, Jul 21, 13 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
On Tue, Jul 21 the direct flights cover the 654 km distance in an average of 1 h 25 m but if you time it right, some flights will get you there in just 1 h 25 m .
On Tue, Jul 21 the longest flights will take 1 h 25 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.
FR 4522
FR 3660
FR 4474
U25436
AZ153
SN3149
SN4131
AZ153
U25436
U25434Omio recommends booking the flight as it is the most popular option from Charleroi to Milan among Omio's users. If you are prioritising price take the flight with prices starting from $24. For those with little time consider booking a flight which can get you there in 1h 30m. The ticket price range depends on the travel mode: a flight costs an average of $24, and a train costs an average of $228.
Distance: 406 miles (654 km)
Most popular Flight | Bus | Train | Driving |
|---|---|---|---|
$128 Average price Cheapest | $128 Average price | $228 Average price | $256 Average price (fuel + tolls) |
4h 30m Average total duration Fastest 1h 30m Onboard + 3h 0m Additional time* | 17h 24m Average total duration 16h 54m Onboard + 30m Additional time* | 12h 52m Average total duration 12h 22m Onboard + 30m Additional time* | 9h 12m Average total duration (door-to-door) |
![]() Most popular airline | ![]() Most popular bus company | ![]() Most popular train company | Your own car or car rental |
Direct Options | Direct Options | Direct Options | Direct Options |
This is compared to other travel options from Charleroi to Milan:
A flight is $0.19 (€0.16) less than a bus for this route with tickets for a bus from Charleroi to Milan costing on average $128 (€105).
A flight is $99 (€82) less than a train for this route with tickets for a train from Charleroi to Milan costing on average $228 (€187).
Other travel options to Milan take longer:
Train takes on average 12h 22m.
Bus takes on average 16h 54m.
The table below shows live departures for Charleroi to Milan flights for today, Monday, July 20. You can also manually refresh the results below to see updated flight journeys.
| Provider | Departs | Duration | Arrives | Transfers | Tickets |
|---|---|---|---|---|---|
VF68 · VF61 | 5:15 PM Brussels Airport | 18h30 | 11:45 AM Milan Bergamo Orio al Serio Airport | 1 transfer | |
VY8983 · VY6330 | 6:05 PM Brussels Airport | 15h10 | 9:15 AM Milan Malpensa Airport | 1 transfer | |
FR 4522 | 7:15 PM Brussels South Charleroi Airport | 1h30 | 8:45 PM Milan Bergamo Orio al Serio Airport | 0 transfersDirect | |
SN4131 | 8:15 PM Brussels Airport | 1h25 | 9:40 PM Milan Linate Airport | 0 transfersDirect | |
AZ153 | 8:15 PM Brussels Airport | 1h25 | 9:40 PM Milan Linate Airport | 0 transfersDirect | |
BA391+ BA7301 | 8:50 PM Brussels Airport | 13h05 | 9:55 AM Milan Linate Airport | 1 transfer | |
U25436 | 9:10 PM Brussels Airport | 1h25 | 10:35 PM Milan Linate Airport | 0 transfersDirect | |
VY8985 · VY6330 | 9:15 PM Brussels Airport | 12h00 | 9:15 AM Milan Malpensa Airport | 1 transfer | |
VY8985 · VY6342 | 9:15 PM Brussels Airport | 15h55 | 1:10 PM Milan Malpensa Airport | 1 transfer | |
VY8989 · VY6342 | 10:15 PM Brussels Airport | 14h55 | 1:10 PM Milan Malpensa Airport | 1 transfer | |
VY8989 · VY6330 | 10:15 PM Brussels Airport | 11h00 | 9:15 AM Milan Malpensa Airport | 1 transfer | |
| Tuesday, July 21 | |||||
LH5587+ LH248 | 6:20 AM Brussels Airport | 4h15 | 10:35 AM Milan Malpensa Airport | 1 transfer | |
SN3153 | 6:20 AM Brussels Airport | 1h30 | 7:50 AM Milan Malpensa Airport | 0 transfersDirect | |
LH5587+ LH270 | 6:20 AM Brussels Airport | 3h40 | 10:00 AM Milan Linate Airport | 1 transfer | |
KL1615+ KL1700 | 6:20 AM Brussels Airport | 5h40 | 12:00 PM Milan Linate Airport | 1 transfer | |
KL1617+ KL1700 | 6:20 AM Brussels Airport | 9h35 | 3:55 PM Milan Linate Airport | 1 transfer | |
KL1613+ KL1700 | 6:20 AM Brussels Airport | 3h45 | 10:05 AM Milan Linate Airport | 1 transfer | |
FR 4522 | 6:30 AM Brussels South Charleroi Airport | 1h30 | 8:00 AM Milan Bergamo Orio al Serio Airport | 0 transfersDirect | |
LH5629+ LH5188 | 6:45 AM Brussels Airport | 3h55 | 10:40 AM Milan Linate Airport | 1 transfer | |
SN3145 | 7:15 AM Brussels Airport | 1h30 | 8:45 AM Milan Linate Airport | 0 transfersDirect | |
AZ7641+ AZ2036 | 7:15 AM Brussels Airport | 4h25 | 11:40 AM Milan Linate Airport | 1 transfer | |
KL1615+ KL1702 | 8:05 AM Brussels Airport | 3h55 | 12:00 PM Milan Linate Airport | 1 transfer | |
KL1617+ KL1702 | 8:05 AM Brussels Airport | 7h50 | 3:55 PM Milan Linate Airport | 1 transfer | |
LH5569+ LH272 | 8:35 AM Brussels Airport | 3h25 | 12:00 PM Milan Linate Airport | 1 transfer | |
QR196 · QR117 | 9:00 AM Brussels Airport | 36h00 | 9:00 PM Milan Malpensa Airport | 1 transfer | |
QR196 · QR123 | 9:00 AM Brussels Airport | 22h10 | 7:10 AM Milan Malpensa Airport | 1 transfer | |
QR196 · QR127 | 9:00 AM Brussels Airport | 29h15 | 2:15 PM Milan Malpensa Airport | 1 transfer | |
U25434 | 9:25 AM Brussels Airport | 1h25 | 10:50 AM Milan Linate Airport | 0 transfersDirect | |
AZ151 | 9:25 AM Brussels Airport | 1h30 | 10:55 AM Milan Linate Airport | 0 transfersDirect | |
SN4133 | 9:25 AM Brussels Airport | 1h30 | 10:55 AM Milan Linate Airport | 0 transfersDirect | |
LH5585+ LH1852 | 9:35 AM Brussels Airport | 3h25 | 1:00 PM Milan Linate Airport | 1 transfer | |
KL1704 · KL1617 | 10:25 AM Brussels Airport | 5h30 | 3:55 PM Milan Linate Airport | 1 transfer | |
KL1704+ KL1681 | 10:25 AM Brussels Airport | 10h55 | 9:20 PM Milan Linate Airport | 1 transfer | |
LH5571+ LH274 | 10:30 AM Brussels Airport | 4h10 | 2:40 PM Milan Linate Airport | 1 transfer | |
SN3147 | 10:50 AM Brussels Airport | 1h30 | 12:20 PM Milan Linate Airport | 0 transfersDirect | |
BA385+ BA7305 | 10:55 AM Brussels Airport | 8h45 | 7:40 PM Milan Linate Airport | 1 transfer | |
BA385 · BA580 | 10:55 AM Brussels Airport | 10h55 | 9:50 PM Milan Linate Airport | 1 transfer | |
BA385 · BA576 | 10:55 AM Brussels Airport | 6h20 | 5:15 PM Milan Linate Airport | 1 transfer | |
BA385 · BA586 | 10:55 AM Brussels Airport | 6h50 | 5:45 PM Milan Malpensa Airport | 1 transfer | |
BA385 · BA590 | 10:55 AM Brussels Airport | 12h40 | 11:35 PM Milan Malpensa Airport | 1 transfer | |
BA385 · BA578 | 10:55 AM Brussels Airport | 8h00 | 6:55 PM Milan Linate Airport | 1 transfer | |
VY8981 · VY6336 | 11:00 AM Brussels Airport | 10h05 | 9:05 PM Milan Malpensa Airport | 1 transfer | |
VY8981 · VY6332 | 11:00 AM Brussels Airport | 4h55 | 3:55 PM Milan Malpensa Airport | 1 transfer | |
VY8981 · VY6334 | 11:00 AM Brussels Airport | 6h40 | 5:40 PM Milan Malpensa Airport | 1 transfer | |
VF66 · VF61 | 12:15 PM Brussels Airport | 23h30 | 11:45 AM Milan Bergamo Orio al Serio Airport | 1 transfer | |
LH5627+ LH1856 | 12:45 PM Brussels Airport | 3h55 | 4:40 PM Milan Malpensa Airport | 1 transfer | |
LH5573+ LH254 | 2:25 PM Brussels Airport | 3h35 | 6:00 PM Milan Malpensa Airport | 1 transfer | |
LX781+ LX1622 | 3:00 PM Brussels Airport | 3h35 | 6:35 PM Milan Malpensa Airport | 1 transfer | |
KL1621+ KL1706 | 3:10 PM Brussels Airport | 7h40 | 10:50 PM Milan Linate Airport | 1 transfer | |
KL1706 · KL1681 | 3:10 PM Brussels Airport | 6h10 | 9:20 PM Milan Linate Airport | 1 transfer | |
BA387 · BA590 | 3:15 PM Brussels Airport | 8h20 | 11:35 PM Milan Malpensa Airport | 1 transfer | |
BA387 · BA580 | 3:15 PM Brussels Airport | 6h35 | 9:50 PM Milan Linate Airport | 1 transfer | |
VY8987 · VY6336 | 3:15 PM Brussels Airport | 5h50 | 9:05 PM Milan Malpensa Airport | 1 transfer | |
FR 3660 | 4:00 PM Brussels South Charleroi Airport | 1h30 | 5:30 PM Milan Bergamo Orio al Serio Airport | 0 transfersDirect | |
SN3149 | 4:35 PM Brussels Airport | 1h25 | 6:00 PM Milan Linate Airport | 0 transfersDirect | |
Find all the dates and times for this journey
Compare train, bus, and flight 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.
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
Milan Malpensa Airport -> Milano Centrale
Find answers to the most common questions about traveling from Charleroi to Milan by flight. 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 flight, the cheapest option, or tips for making the most of your visit at Milan, this guide helps you travel smarter and with confidence.

Most Charleroi to Milan flights use the Brussels Airport to Milan Linate Airport airport pair, with some services landing at Milan Malpensa Airport. Use this guide to compare Charleroi and Milan airports on this route, check city-centre transport, alongside checking practicalities like airport facilities and services.
Milan Linate Airport is 6 km from Milan city centre. Public transport options include:
Milan Linate Airport has practical services for this route, including Wifi, Shopping, Parking, ATM, Taxis, Accessibility, WC, Shower, Lounge, and Lost and Found Office.
Free Wi-Fi available throughout the airport. ATMs are located in the arrivals and departures areas.
Lost and found is available at the station.
Available at Milan Linate Airport: Parking, Taxis, WC.
Accessibility facilities are available at Milan Linate Airport: Ramps, assistance.
Milan Malpensa Airport is 2 km from Milan city centre. Public transport options include:
Milan Malpensa Airport has practical services for this route, including Wifi, Shopping, Parking, ATM, Taxis, Accessibility, WC, Shower, Lounge, and Lost and Found Office.
Free Wi-Fi available throughout the airport. ATMs are located in both terminals, near check-inas and gates.
Lost and found is available at the station.
Available at Milan Malpensa Airport: Parking, Taxis, WC.
Accessibility facilities are available at Milan Malpensa Airport: Elevators, ramps.
Milan Bergamo Orio al Serio Airport is 1 km from Milan city centre. Public transport options include:
Milan Bergamo Orio al Serio Airport has practical services for this route, including Wifi, Shopping, Parking, ATM, Taxis, Accessibility, WC, Shower, Lounge, and Lost and Found Office.
Free Wi-Fi available throughout the airport. ATMs are located in the arrivals and departures areas.
Lost and found is available at the station.
Available at Milan Bergamo Orio al Serio Airport: Parking, Taxis, WC.
Accessibility facilities are available at Milan Bergamo Orio al Serio Airport: Elevators, ramps.
Here are some other resources that might have the information you need