Inter have won their first Coppa Italia since 2011 after coming from behind to beat Juventus in an all-action final that produced six goals and was decided in extra-time.
Nicolo Barella gave the Nerazzurri an early lead, but quick-fire goals from Alex Sandro and Dusan Vlahovic straight after half-time turned the final on its head. Hakan Calhanoglu scored a late penalty to force extra-time, before Ivan Perisic scored another spot-kick and then a screamer in the additional period to ensure the trophy would be heading to Milan.
There were only a few minutes on the clock when Barella cut in from the left and fired a curling effort into the far corner – Mattia Perin could only watch it fly past him.
Juventus took until midway through the first half to get into any kind of rhythm. But, once they did, Inter goalkeeper Samir Handanovic needed to intervene several times to keep his team ahead.
First, Paulo Dybala fired at the Slovenian after engineering a chance with his quick feet, before a spectacular parry to turn a fierce Vlahovic effort behind for a corner. Juve pressure continued when Handanovic tipped over from Matthijs de Ligt and Dybala fired wide.
It was Inter’s turn to rally in the closing stages of the first half, particularly as Perisic moved up through the gears. Calhanoglu and Marcelo Brozovic both had attempts, while Alex Sandro did just enough to stop Edin Dzeko connecting with a Perisic cross.
Vlahovic went down in the penalty area under pressure from Stefan de Vrij early in the second half, but neither the referee nor the VAR was interested in the appeals.
Yet it wasn’t long before Juve had their quick double. There was confusion as to who should be credited for it when Sandro drove the ball goalward and Morata flicked a boot at it, enough to distract Handanovic who should have done much better.
Then, with Inter having barely had time to breathe, a rapid counter attack that saw good work from Morata, Federico Bernardeschi and Dybala put Vlahovic through. His first effort was saved by Handanovic, but the Juve striker was sharp enough to convert the rebound.
Almost immediately, Perin was called into action at the other end, parrying a bouncing effort from unlikely shooter Matteo Darmian. Simone Inzaghi soon introduced a trio of substitutes and replacement Federico Dimarco went agonisingly close to finding an equaliser.
Leonardo Bonucci, brought on to help protect the lead, was clumsy when he pulled on Lautaro Martinez. De Ligt was also involved. The Argentine went down and Calhanoglu lashed the resultant spot-kick into the top corner with ten minutes left of normal time.
Extra-time brought even more drama as Inter ultimately surged to victory. Penalty appeals when De Vrij was brought down under De Ligt's challenge were initially ignored, but a belated VAR review resulted in referee Paolo Valeri pointing to the spot. Calhanoglu had already been withdrawn, but Perisic stepped up and replicated his teammate’s earlier result without hesitation.
As Juve pushed to get back into it at the other end, Perisic saved the best goal of the final until last, cutting in from the left and firing an even fiercer effort than Barella’s opener into the same corner.
Juventus vs Inter player ratings - Coppa Italia final
1. Juventus (4-2-3-1)
GK: Mattia Perin - 6/10 - A big save from Darmian soon after Juve had taken the lead was important. Beaten twice from the spot.
RB: Danilo - 5/10 - Was starting to struggle against Perisic shortly before limping off near the end of the first half.
CB: Matthijs de Ligt - 4/10 - Perhaps contributed to giving away the first Inter penalty, but definitely took out De Vrij for the second.
CB: Giorgio Chiellini - 6/10 - Had personally done alright even though Juve conceded twice while he was on the pitch.
LB: Alex Sandro - 7/10 - Scored the equaliser with a low shot. Defended well enough, with Inter's main threat on the other side.
CM: Denis Zakaria - 6/10 - Withdrawn with plenty of time to go. Hadn't seen a great deal of the ball with Inter primarily attacking in wide areas.
CM: Adrien Rabiot - 6/10 - Passed impeccably but didn't seem all that effective overall.
RM: Juan Cuadrado - 5/10 - Didn't do a great job of tracking Perisic.
AM: Paulo Dybala - 7/10 - Set up the go-ahead goal with a really good pass.
LM: Federico Bernardeschi - 6/10 - Involved in Juve's second with a clever header on the flank.
ST: Dusan Vlahovic - 7/10 - Had a good shot saved in the first half but was persistent and eventually put Juve ahead.
SUB: Alvaro Morata (41' for Danilo) - 7/10 - Made a positive impact. Scored the equaliser and set off the counter attack for the second goal.
SUB: Leonardo Bonucci (67' for Zakaria) - 4/10 - Came on to protect the lead and gave away the penalty that sent the game to extra-time.
SUB: Manuel Locatelli (67' for Bernardeschi) - 5/10
SUB: Arthur (84' for Chiellini) - 5/10
SUB: Luca Pellegrini (90+1' for Sandro) - 5/10
SUB: Moise Kean (99' for Dybala) - 4/10 - Hardly even touched the ball.
2. Inter (3-5-2)
GK: Samir Handanovic - 5/10 - Made a string of first half saves when Juve built up a head of steam. Shouldn't have been beaten for the equaliser.
CB: Danilo D'Ambrosio - 5/10 - Vlahovic sat him down too easily when Juve took the lead.
CB: Stefan de Vrij - 7/10 - Never really in danger when penalty appeals went up against him. Won one of his own when he was clattered by De Ligt.
CB: Milan Skriniar - 6/10 - Distributed the ball really well.
RWB: Matteo Darmian - 5/10 - Had an unlikely shot well saved but was later sacrificed for more aggressive attacking threat.
CM: Nicolo Barella - 6/10 - Started the final in the best possible way with a stunning goal. Probably too quiet after that.
CM: Marcelo Brozovic - 6/10 - It was his clever reverse pass that found Barella in space. Lost his head when Juve went ahead and was lucky not to get sent off for dissent only second after being yellow carded.
CM: Hakan Calhanoglu - 8/10 - Decent source of creativity. Made absolutely no mistake from the penalty spot.
LWB: Ivan Perisic - 9/10 - His surges forward down the left gave Juventus all sorts of defensive headaches. Kept the ball alive as the first penalty was won, scored from the spot himself and later made sure with a thunderbolt.
ST: Lautaro Martinez - 7/10 - Clever to win the penalty as he protected the ball from Bonucci and De Ligt.
ST: Edin Dzeko - 5/10 - Not his best night. Replaced with a lot of time left.
SUB: Joaquin Correa (63' for Dzeko) - 6/10
SUB: Federico Dimarco (63' for D'Ambrosio) - 7/10
SUB: Denzel Dumfries (63' for Darmian) - 6/10
SUB: Arturo Vidal (90+1' for Calhanoglu) - 6/10
SUB: Alexis Sanchez (90+1' for Martinez) - 6/10
SUB: Alessandro Bastoni (116' for Dimarco) - N/A