Atalanta and Genoa both had the chances, with Hans Hateboer hitting the woodwork, but Davide Ballardini successfully muzzled Gian Piero Gasperini’s men.
Riccardo Orsolini’s penalty proved enough for Bologna’s first win since November 29, getting the better of an unusually toothless Verona.
Another Zlatan Ibrahimovic brace gave Milan a 2-0 win over Cagliari, when Alexis Saelemaekers was booked twice within eight minutes in his return to action.
Crotone dragged themselves off the foot of the table with a shock 4-1 victory over high-flying Benevento, as Nwankwo Simy scored two and forced an own goal.
Inter comfortably out-played Juventus in the Derby d’Italia, as Nicolò Barella assisted ex-Bianconeri star Arturo Vidal and then scored the second himself.
Lazio dominated one of the most one-sided derbies seen in years, as Manuel Lazzari tortured Roma defenders, Ciro Immobile and Luis Alberto’s brace sealed a 3-0 victory.
Napoli were clinical and Lorenzo Insigne inspirational, scoring a brace and creating an extraordinary assist for Hirving Lozano, as Fiorentina were thumped 6-0.
Ernesto Torregrossa made the perfect Sampdoria debut, completing the comeback to beat Udinese 2-1 after Antonio Candreva’s Panenka penalty.
Parma thought they had ended the winless streak with a Juraj Kucka header, but Filip Djuricic converted the Sassuolo equaliser with the last kick of the game.
Torino were unable to beat a Spezia side down to 10 men for over 80 minutes, meaning they haven’t won a Serie A home game in six months.