Juve came from behind in their bid to return to Rome and avenge their defeat in the Coppa Italia final last season. The Bianconeri knocked out Milan for the second consecutive year in extra time.
Stephan El Shaarawy gave the Rossoneri the lead, but a gorgeous free kick from Sebastian Giovinco and an extra-time winner from substitute Mirko Vucinic was enough for the Old Lady.
It represents a blow for Massimiliano Allegri, who is constantly in need of good results in a bid to save his job, as Silvio Berlusconi and Adriano Galliani continue to cast doubt over his future.
Antonio Conte looked smug on the sidelines, after his substitute won the tie and kept Juve's hopes of a treble alive.
Here are five things we learned.
Sebastian Giovinco assumed the free-kick duties, as Andrea Pirlo was left on the bench by Antonio Conte.
The Formica Atomica was lethal from the dead ball, curling a wonderful effort over the wall to equalise for Juve, leaving Marco Amelia rooted to the spot.
Minutes later, Giovinco almost scored a carbon copy of the first goal; this time it was closer to the top corner, forcing Amelia to scramble across to make a fine save.
It is evidence that Giovinco is keen to assume the responsibility that he enjoyed while with Parma last season.
Pirlo is the king of the set-piece, but Giovinco may get his turn soon, even with Pirlo in the side.
Francesco Acerbi was acquired from Chievo last summer after impressing for the Flying Donkeys, but he has done nothing that reminds you of the player that Milan thought they were signing.
He is just 24 years old, so perhaps there is room to grow as a player and eventually become good enough to represent a top club, but that time is not now, and Allegri should resist using him any further this season.
Acerbi appeared to be a clown at the back when Giovinco ran at him or left him for dead with his movement and change of direction.
It was a terrible partnership that he formed with Philippe Mexes, who was typically rash in the tackle and tended to lunge for the ball and jeopardise his team's ability to hold up Juve in transition.
A typical example of how poor the pair of them worked together was the Mirko Vucinic winner in extra time.
The French centre-back came across to the right as Emanuele Giaccherini shifted the ball into the path of Paolo De Ceglie and Vucinic, who were bombing forward.
Ignazio Abate should not be excused either, as the Zenit target failed to cover adequately, but Mexes lunged in to deny De Ceglie and completely missed the ball, leaving Vucinic in the clear.
Acerbi was nowhere near the Montenegrin—his reaction to the events unfolding and ability to cover yet another example of his ineptness—which provided the Juve striker with the simple task of slotting past Marco Amelia.
With Daniele Bonera, Mario Yepes and Cristian Zapata sidelined, the Rossoneri are in desperate need of a new centre-back, as these other options are also short of the required quality to move Milan into contention for a Champions League place for next season.
Milan are short of a creative spark in attack, but Massimiliano Allegri continues to persist with Kevin-Prince Boateng as a trequartista or right winger, and the Ghanaian is not proving to be effective in either of these roles.
Giampaolo Pazzini is a striker who requires service, and when tasked with conjuring something on his own with the ball at his feet, the former Inter player does little to suggest that he belongs at this level.
Allegri's other options in the front line have been Urby Emanuelson, who started tonight's Coppa Italia game from the right of the attacking trident, but the Dutchman is nothing more than a squad player, only capable of performing a role to restrict the opposition rather than be decisive for his own team.
Stephan El Shaarawy is capable of dribbling the ball, turning and linking with teammates, but he lacks help.
Bojan Krkic, while tremendously frustrating at times, is the only player who can do similar things in the final third, when Milan are tasked with creating their own openings, rather than exploiting the opposition's mistakes on the counterattack.
Zenit have recently been linked with a move for Milan's Ignazio Abate, with the Russian club rumoured to have already offered the player a contract.
Milan would be wise to negotiate and agree to a deal for the 26-year-old, as the emergence of Mattia De Sciglio is very promising indeed.
While the youngster is capable of filling in on the left of a back four, he is much more comfortable at right-back, meaning that it could be difficult to fit him and Abate into the same side.
While Abate possesses lightning-fast pace, he often leaves huge gaps of space behind him when attacking, as shown with Vucinic's late winner for Juve on Wednesday.
His attacking upside is not nearly good enough to just accept such a weakness in his game, and De Sciglio already has a more rounded game.
Should the funds generated by the sale of Abate be made available to strengthen other areas of the side, it is a deal that makes perfect sense to improve the Rossoneri.
Juve have settled on the 3-5-2 formation now for more than a year, and it has been the key to their success.
But Andrea Pirlo is the most vital part of the side, and without him the system just isn't as effective for a multitude of reasons.
Stephan Lichtsteiner, Emanuele Giaccherini, Paolo De Ceglie, Federico Peluso, Mauricio Isla and Kwadwo Asamoah (to a certain extent) are all defensive wide players, more capable of impacting the game from deep, rather than beating a full-back with a piece of skill in more advanced areas.
So Pirlo is tasked with developing the play from the deeper areas, and Antonio Conte has replaced him when needed with the likes of Paul Pogba and Luca Marrone.
Neither of these young players possesses similar technical skills to the Azzurri legend, which means that Juve's play is disrupted.
The solution for Juve will be to tweak the personnel that operate in the 3-5-2—with faster, more skillful wide players—or to alter the formation when Pirlo is not in the side.