Edin Dzeko and Henrikh Mkhitaryan both struck inside the opening 11 minutes of the contest, meaning that Inter will have a strong advantage to take into the second leg of the last-four contest at San Siro next Tuesday.
Milan's position at this stage of the competition is a surprise, but they are seven-time winners of the European Cup, with only the Kings of Europe Real Madrid lifting the famous trophy on more occasions (14).
Inter have three European Cups to their name, meanwhile, with their last triumph coming in 2010 under the management of a certain Jose Mourinho, and the Black and Blues have now placed themselves in a commanding position to reach another final.
As rivalries go, Derby della Madonnina is undoubtedly one of the biggest, with the two giants of Italian football locking horns in the semi-finals of the Champions League.
Inter last won Serie A in 2020-21, with Milan triumphing last season, but the pair are currently battling for top-four finishes in Italy's leading division, with the former sitting fourth in the table, two points and one spot ahead of the latter on the same number of matches (34).
Serie A would have been the last thing on either manager's mind when the first whistle blew, though, and expected, there was a wonderful atmosphere inside the marvellous San Siro.
Milan were without the services of their most important player Rafael Leao due to a thigh injury, but there had been positive news on the Portugal international ahead of kickoff, as he is allegedly poised to sign a new five-year deal at the club in the near future.
It was Inter that made the breakthrough in the eighth minute of the contest, with Dzeko expertly volleying a corner from Hakan Calhanoglu into the back of the net; Milan goalkeeper Mike Maignan was simply rooted to the spot, with the ball flying past the Frenchman to silence the home fans.
Inter then had a second in the 11th minute, with Mkhitaryan being allowed to break into the middle of the penalty box after collecting a pass from Federico Dimarco, and he then smashed the ball past Maignan to cap an incredible start from Simone Inzaghi's side.
The Black and Blues almost made it 3-0 in the 15th minute when Mkhitaryan curled one from distance, but the post came to Milan's rescue on this occasion, before the Inter attacker brought a smart save from Maignan moments later.
Dzeko fired another attempt wide of the Milan goal in the 24th minute, before Milan had a half-chance own the other end, with Brahim Diaz's flick ending up the wrong side of Inter's goal.
Inter were then awarded a penalty in the 31st minute when Lautaro Martinez was brought to the ground by Simon Kjaer, but the referee was sent across to the monitor to take a second look following advice from VAR and then overturned his initial decision, as Martinez had fallen quite easily inside the box.
Martinez struck one just high of the Milan crossbar in the spell that followed, before Denzel Dumfries failed to make the most of a chance inside the box, turning wide of the post from a dangerous area.
Olivier Giroud fired wide of the Inter goal in the closing stages of the first period, with Inzaghi's side bringing a deserved two-goal lead into the interval of the Milan derby.
Milan started the second half on the front foot, and Diaz curled one just wide of the Inter goal in the 49th minute, before Junior Messias missed the target with an effort two minutes later.
Inter then had a golden chance to score a third when Dzeko broke into a one-on-one with Maignan, but the Milan goalkeeper was on hand to make an excellent save.
Sandro Tonali came within inches of halving the deficit in the 63rd minute when he struck one from outside the box, but the midfielder's effort was deflected onto the outside of the post.
Matteo Darmian had a strike blocked behind for a corner in the 74th minute after excellent work from Romelu Lukaku, who replaced Dzeko for the latter stages of the match.
Roberto Gagliardini failed to get a shot away inside the Milan box in the 83rd minute when he was presented with an excellent chance, with the home team surviving another dangerous moment, before Andre Onana saved from Tommaso Pobega late on, and Inter ultimately declared at two, putting them in an excellent position to advance to the final.
Milan will be looking to bounce back when they resume their Serie A campaign against Spezia on Saturday evening, while Inter will also be in action in Italy's top fight on the same night at home to Sassuolo.