Second-place Manchester City drew 2-2 with Crystal Palace on Saturday and Liverpool, who still possess a game in hand, took full advantage to tighten their grip at the top and boost their chances of a first league title since 1990.
United are the only team to take points off Jurgen Klopp's men this season and deployed a three-man defence – including Luke Shaw at centre-back – as they did when the teams drew 1-1 at Old Trafford in October.
91 - Liverpool have taken 91 points from the last 93 available to them in the Premier League (P31 W30 D1 L0). Insanity. pic.twitter.com/pbHDfG6PM5— OptaJoe (@OptaJoe) January 19, 2020
But Liverpool took just 14 minutes to take the lead through Van Dijk and, despite an improvement from the visitors in the second half, Salah raced away on the break to clinch the three points in second-half stoppage time.
After Fred and Brandon Williams let Van Dijk get loose in the area Harry Maguire was United's last hope, but the Netherlands international leapt above the man who took his tag as the world's most expensive defender to nod in the opener.
VIRGIL VAN DIJK 🔥🔥🔥 pic.twitter.com/gVnPdpQ48k— NBC Sports Soccer (@NBCSportsSoccer) January 19, 2020
Liverpool had what they thought was a second ruled out by VAR in the 25th minute.
David de Gea spilled a high ball under pressure from Van Dijk but referee Craig Pawson did not blow his whistle after putting it to his mouth. Play continued and Roberto Firmino curled home a fine finish, only for the challenge on the United goalkeeper – who received a yellow card for his protests – to be deemed a foul upon review.
Andreas Pereira failed to convert a rare United chance against the run of play from inside the six-yard box, before De Gea managed to keep out Sadio Mane on the stroke of half-time.
Liverpool came flying out of the blocks in the second half, with Salah scuffing a glorious opportunity wide and De Gea brilliantly tipping a venomous drive from Jordan Henderson onto the post.
Anthony Martial showed a lack of composure when he hacked high and wide after a brilliant one-two with Pereira before the hour mark, while Mane passed up an opening after a swift break from the hosts.
Ole Gunnar Solskjaer switched to a back four for the final 15 minutes but, as United pushed for an equaliser, Salah punished the visitors by surging clear from a corner and holding off Daniel James to seal the win with a cool finish.
THE EGYPTIAN KING ❗️ pic.twitter.com/HSSf9CZM9v— NBC Sports Soccer (@NBCSportsSoccer) January 19, 2020
What does it mean? United need attacking reinforcements
Solskjaer said pre-game Marcus Rashford was facing "weeks" out with a back injury, though reports subsequently emerged claiming he could be facing up to three months out.
With James and Martial doing little up top, United would be wise to look to the transfer market to bolster their options. Failing to secure the signature of Erling Haaland, who scored a hat-trick after coming off the bench on his Borussia Dortmund debut on Saturday, now looks like even more of a blow.
Van Dijk a colossus
Not only did he score the first goal, Van Dijk was immovable at the heart of Liverpool's defence and comfortably dealt with United's limp attack. His exemplary distribution from the back helped keep Solskjaer's men on the back foot for much of the game.
The Pereira conundrum
Having made a marginal impact as a winger at Valencia, Pereira fared little better when deployed in a deep-lying midfield role last season. He played as a number 10 at Anfield and missed United's best chance while creating just one chance for Martial.
Liverpool travel to Molineux to face Wolves on Thursday, with United at home to Burnley a day prior.