The Argentine struck with a pair of spot kicks to send the Blaugrana into the next round and claim the record for most goals in a single Champions League season.
Lionel Messi stole the headlines once again, with two penalties in the first half on both sides of an Antonio Nocerino goal bringing the Argentine up to 14 Champions League goals for the season, a record for a single campaign.
Andres Iniesta sealed the victory early in the second half, as the home side progressed to the last four for a record fifth straight year.
With a 0-0 result from the first leg under its belt, Milan knew that a scoring draw would be enough to take the Italian club through. Barca coach Pep Guardiola had already suggested that a Rossoneri goal was inevitable, and clearly set up to counter such an eventuality, with his side, and Messi in particular, dictating the opening exchanges.
A blistering counterattack after only four minutes saw the Barca forward glide into the penalty area in the blink of an eye, but his finish was put straight into the grateful arms of Christian Abbiati.
Moments later and Messi was at it again, this time poking the wrong side of the post after being put clean through by a beautiful piece of combination play from Cesc Fabregas and Dani Alves.
The Argentine sprinted clear of the Milan backline once more in the 11th minute, but initially appeared to waste the chance with a square pass to Xavi. However, the ball was soon back at his feet, and Luca Antonini, so assured in the first leg, slid in far too rashly, conceding a penalty.
Messi himself stepped up to take the spot kick and made no mistake, beating Abbiati with a low shot into the left corner to score a record 13th Champions League goal of the season and 50th of his career.
The Rossoneri were nowhere to be found, and with Guardiola’s men dominating possession and looking eminently at ease, the tie seemed to be heading to an inevitable conclusion.
However, out of nowhere, Milan was level just after half an hour. Robinho found Zlatan Ibrahimovic at the top of the box, who in turn slid in the unmarked Nocerino on the left for a low finish past Victor Valdes to put the visitors ahead on aggregate.
Milan was heading through as things stood thanks to its away goal, but could only hold onto its advantage for nine minutes. From a corner, a tug on the shirt of Sergio Busquetes by Alessandro Nesta was spotted, and referee Bjorn Kuipers awarded Barca another penalty.
Messi steadied himself once more from the spot, this time sending the ball into the right corner to put the home side back in front with a 2-1 aggregate lead at the end of the first half.
Despite a promising start to the second period from Milan, the Catalans were able to further increase their advantage within eight minutes of the restart. Iniesta was perhaps fortunate to see a block by Philippe Mexes loop into his path, but did not hesitate, and stroked home from six yards out.
The Rossoneri were floored by the goal, with Barca playing comfortably on the back of a two-goal cushion. They nearly added another just past the hour mark, as Messi played in substitute Thiago Alcantara for a shot that was dragged just wide.
At this point, the sting was well and truly taken out of the game, with the fans inside Camp Nou already looking forward to a place in the last four. Further half-chances for Adriano and Messi were foiled, but it mattered little as the home side ran out the comfortable winner in the end.
Barca now advances to its fifth consecutive Champions League semifinal, a tournament record, and will face the winner of the Chelsea-Benfica tie, with the first leg set for April 18.