Les Dogues showed early intent with Gabriel Gudmundsson racing forward but ultimately firing off target, before the Reds let off a warning shot of their own as Mohamed Salah’s curling attempt was routinely saved by Lucas Chevalier.
Proceedings slowed down after that as both teams moved the ball around nicely but lacked a cutting edge in the final third; Kyle Bakker’s cross was blocked after ponderous play from Rémy Cabella and Hákon Arnar Haraldsson, while Salah overhit his through ball for Luis Díaz at the other end.
The visitors were making it difficult for Arne Slot’s side to find a way through, and Díaz fizzed a ball into the box on the half-hour that Salah couldn’t turn towards goal.
The Egyptian didn’t have to wait much longer for his breakthrough, though, as Kostas Tsimikas dispossessed Jonathan David, and Curtis Jones immediately threaded through a perfectly weighted pass for Salah to calmly score his 50th European goal for Liverpool.
Before the break, Salah latched onto Díaz’s long pass and held off Gudmundsson brilliantly but couldn’t find the target with his eventual effort.
Liverpool had more opportunities after the restart, with Salah placing his attempt wide before Jarell Quansah met Tsimikas’ free-kick but couldn’t guide his header on target.
Chevalier then rushed out well to deny Darwin Núñez, but there was still a blow for the visitors as Aïssa Mandi received a second yellow for cynically bringing down Díaz having first been booked for dissent after the opening goal.
Undeterred, they stunned Anfield just three minutes later with Gudmundsson picking out Haraldsson, whose shot was blocked by Tsimikas before David pounced to score his fifth UCL goal this term.
However, it took just five minutes for the hosts’ lead to be restored as Harvey Elliott’s strike was deflected past Chevalier.
The goalkeeper was equal to efforts from Salah and Federico Chiesa after that, but Alexis Mac Allister deflected Haraldsson’s driven shot over to ensure Liverpool retained their perfect record in the UCL this season and wrapped up top spot with a game to spare – even with Núñez’s late goal being ruled out for offside.
They also ended Lille’s 21-match unbeaten run across all competitions, leaving Les Dogues 12th before Wednesday’s fixtures.