Mauro Icardi pounced on a mistake by goalkeeper Gianluigi Donnarumma to nod home in the second minute of added time after an otherwise forgettable match
Captain Mauro Icardi struck a dramatic injury-time winner as Inter Milan stunned AC Milan 1-0 in the derby at the San Siro to retake third place in Serie A on Sunday.
The Argentinian pounced on a mistake by goalkeeper Gianluigi Donnarumma to nod home in the second minute of added time after an otherwise forgettable match, leaving Gennaro Gattuso's Milan without a win in the last five league derbies.
But Inter continued their recent resurgence under Luciano Spalletti after finishing fourth last term to qualify for the Champions League for the first time since 2011-12, moving to within six points of leaders Juventus, after their 1-1 home draw with Genoa on Saturday.
"I came here to win, not to just sit on a bench for a season and try to bring home a salary," former Roma coach Spalletti told Sky Sport Italia.
"I came here to organise the future of Inter and the players must do the same.
"I liked that after the final whistle, Icardi said we must find consistency and keep pushing. Inter chose us to bring this side back to the level that the fans deserve."
There was an injury blow for Inter ahead of Wednesday's Champions League clash against Barcelona, though, with Radja Nainggolan substituted midway through the first half after tangling with AC midfielder Lucas Biglia.
Milan is black and blue!— ESPN FC (@ESPNFC) October 21, 2018
Mauro Icardi scores in stoppage time to give Inter a dramatic win in the Milan derby! pic.twitter.com/fxvc0t4kqy
"Nainggolan has been chopped down," added Spalletti. "We have to take him to the hospital and see. He won't be with us for a while."
AC Milan remain down in 12th after seeing their eight-game unbeaten run in all competitions ended.
Icardi had the ball in the net early on, but the striker's effort was ruled out for offside after a check with VAR.
Although the opening stages of the game were not overflowing with attacking quality, there was plenty of niggle, with Biglia left incensed after he was booked despite appearing to have been stamped on by Nainggolan before the Belgian hobbled off.
Nominal home side Inter looked the more likely to find a breakthrough in the first half, with Ivan Perisic seeing a header palmed away by Donnarumma and Stefan de Vrij striking the crossbar with a twisting volley.
Out of nowhere AC Milan thought they had taken the lead shortly before half-time, but it was Mateo Musacchio's turn to be denied by the linesman's flag.
Inter had a couple of second-half chances from set-pieces, with Matias Vecino nodding over and Perisic seeing a thunderous strike blocked.
The game appeared to be petering out into a goalless draw, but Donnaruma came and failed to claim a speculative right-wing cross from Vecino, and Icardi headed into the unguarded net to score his fourth league goal of the campaign and spark jubilant scenes among the Inter fans in the stands.
"We lost the game together, not because of Donnarumma," insisted Milan boss Gattuso.
"We lost because we didn't play with the right courage, we were distracted and conceded a naive goal."
Earlier on Sunday, late goals from Ciro Immobile and Joaquin Correa gave Lazio a 2-0 win at Parma.
Promoted in each of the three seasons since their bankruptcy, Parma have impressed this season but their late capitulation saw the visiting Roman outfit into the top four.
Ex-Italy boss Gian Piero Ventura returned to coaching but failed to guide tailenders Chievo to their first win of the season.
Relegation rivals Atalanta ripped Chievo apart in a 5-1 home mauling for Ventura in his first game since being sacked last November after Italy failed to reach the World Cup finals for the first time since 1958.
Two other clubs also locked in the relegation zone shared the points as Frosinone and Empoli drew 3-3 in a game where Frosinone doubled their season's goals tally to six and their points tally to two.
Frosinone 3 (Silvestre 8-og, Ciofani 54-pen, 63) Empoli 3 (Zajc 32, Silvestre 48, Ucan 79)
Bologna 2 (Santander 59, Calabresi 77) Torino 2 (Falque 13, Baselli 54)
Parma 0 Lazio 2 (Immobile 81-pen, Correa 90+4)
Chievo 1 (Birsa 84-pen) Atalanta 5 (De Roon 25, Ilicic 28, 50, 52, Gosens 72)
Fiorentina 1 (Veretout 60-pen) Cagliari 1 (Pavoletti 69)
Inter Milan 1 (Icardi 90+2) AC Milan 0