Goals from Andrea Belotti and Alex Berenguer gave Torino the three points in a game which also saw Milan defender Alessio Romagnoli sent-off late on.
Torino moved into sixth place in the table, two points behind Roma who occupy the fourth and final Champions League qualifying spot.
Defeat for Milan meant they have slipped to seventh, currently out of even the Europa League spots.
Belotti put Torino in front from the penalty spot in the 58th minute after a foul by Milan’s Ivory Coast midfielder Franck Kessie on Armando Izzo.
Spanish winger Berenguer added the second after 69 minutes with a right-foot shot from the side of the penalty area.
Lazio kept their hopes of Champions League football alive after Felipe Caicedo’s early brace saw them to a 2-1 win at Sampdoria, while Dries Mertens moved level with Diego Maradona in Napoli’s all-time Serie A scoring list after bagging his 81st league strike in their 2-0 win at Frosinone.
Simone Inzaghi’s Lazio are in eighth but one of six teams contesting the final two Champions League spots, and they moved to within three points of the top four after an action-packed clash in Genoa which also saw veteran striker Fabio Quagliarella extend his lead at the top of the scoring charts.
Caicedo opened the scoring in the third minute with a smart finish after beating Omar Colley and made it two in 16 minutes later with a deft header from Romulo’s cross.
That second goal proved just about enough for the away side, who survived a eventful second half in which Quagliarella crashed home his 23rd league goal of the season.
The win means that Lazio closed the gap on local rivals Roma, who despite a wildly inconsistent season currently occupy the final Champions League spot following Saturday’s comfortable 3-0 home win over Cagliari, their best display since interim coach Claudio Ranieri took over from sacked Eusebio Di Francesco in March.
They are just four points behind Inter Milan, who drew 1-1 with newly-crowned champions Juventus on Saturday.
– Mertens joins Maradona –
After the win Ranieri said that he would be “super happy” for Antonio Conte to succeed him amid speculation the club have lined up a three-year contract worth 9.5 million euros ($10.6 million) a season to tempt the former Juventus, Chelsea and Italy manager to the Italian capital.
The 67-year-old later told reporters that he would “pick him up at the airport” if Conte decided to sign for Roma, Ranieri’s boyhood club.
Second-placed Napoli closed in on next season’s Champions League thanks to Mertens’ smart 19th-minute free-kick — making the Belgian Napoli’s joint third-highest Serie A scorer alongside Maradona — and Amin Younes’ simple finish three minutes after the break, which pushed Frosinone to the brink of relegation.
“It’s an honour to have something in common with the number one player in the world, a symbol of Napoli,” Mertens wrote on Instagram.
With four matches remaining Napoli are eight points clear of third-placed Inter and a full 14 ahead of Torino, Milan and Atalanta.
For more news your way, download The Citizen’s app for iOS and Android.
Download our app and read this and other great stories on the move. Available for Android and iOS.