The Egyptian scored his 29th goal of a hugely impressive debut season in England, his 84th-minute finish completing Liverpool's turnaround at Selhurst Park.
Luka Milivojevic converted a13th-minute penalty to give the hosts a half-time lead after Loris Karius' decision to rush out and confront Wilfried Zaha had resulted in a blatant foul on the Palace player.
However, Sadio Mane equalised four minutes after the break to draw Liverpool level, steering home James Milner’s low cross from the left.
The goal was the highlight of an eventful game for the Senegal international, who had a first-half effort chalked off, was booked for diving before the break and then somehow avoided seeing a second yellow card for deliberate handball.
Salah sealed the comeback with a composed finish, controlling the ball neatly before prodding beyond Wayne Hennessey to lift Liverpool up to second in the table.
The visitors had started brightly too, controlling the opening stages only to fall behind when Zaha’s clever burst in behind Trent Alexander-Arnold led to Karius conceding a penalty.
The Palace winger had already caught out the teenage full-back in the opening minutes with a similar run in behind, only for Liverpool’s goalkeeper to block his attempt with his chest.
Karius wasn’t required when the two faced each other for a second time soon after, but his late arrival saw him spectacularly take out Zaha and gift spot-kick specialist Milivojevic the chance to break the deadlock.
Liverpool’s attempts to respond prior to the break centred around Mane, with the forward seeing a close-range header rightly ruled out for offside.
He inadvertently helped the hosts by diverting Virgil van Dijk’s on-target header wide of the target before picking up a booking for simulation, his theatrical fall following a tackle by James McArthur failing to fool referee Neil Swarbrick.
Yet a switch of ends resulted in a change of fortunes for Mane and Liverpool, who lost second-half substitute Adam Lallana to injury just 324 seconds after his arrival off the bench.
James Milner sold Aaron Wan-Bissaka a dummy to create space for a low cross that left his team-mate needing to just apply the finishing touch from close range.
Benteke failed to take two glorious chances to put Palace back in front, first lobbing wide with only Karius to beat before spooning over Andros Townsend's pass, and Salah made the Belgian pay for his profligacy.
The winger showed great composure to tuck home Andrew Robertson’s cross from the left, his 37th goal in all competitions securing a morale-boosting result ahead of the mouth-watering Champions League quarter-final against Manchester City in midweek.
Key Opta stats:
- Liverpool have now won 679 top-flight away games – no side has ever won more (level with Arsenal).
- Mohamed Salah has now scored in 21 different Premier League games this season; a joint-high for a 38-game season in the competition (Cristiano Ronaldo in 2007-08 and Robin van Persie in 2012-13).
- Salah has been involved in 38 Premier League goals this season (29 goals, 9 assists), the most by any player in the competition since Luis Suarez in 2013-14 (43).
- Crystal Palace are the first team to lose three consecutive Premier League home games thanks to goals conceded in the final 10 minutes (88th vs Tottenham, 90th vs Man Utd and 84th vs Liverpool).
- Sadio Mané became the joint-highest scoring Senegalese player in Premier League history, equalling Demba Ba’s haul of 43 in the competition.