Salah thought he had given Liverpool the lead with another splendid goal at the Wanda Metropolitano after dancing past three Atletico defenders and firing in but James Milner tucked his leg deflecting the ball to the far left, the Egyptian celebrated the goal but it was counted for Milner.
But a wild contest in Madrid had several twists and turns still to come as Naby Keita doubled the advantage only for Atletico to strike twice before half-time, Antoine Griezmann pulling his team back into the match and leaving Liverpool looking temporarily dishevelled.
Yet Griezmann was sent off in the 52nd minute for a high foot into the face of Roberto Firmino and Liverpool made Atleti pay, a clumsy challenge by Mario Hermoso on Diogo Jota giving Salah the chance to win the game from the spot.
Even with 10 men, Atletico thought they might have snatched a draw late on as Luis Suarez, on off the bench, prepared to take a penalty against his former club with his first touch.
Instead, referee Daniel Siebert infuriated the home crowd by cancelling his decision after consulting the replay.
Liverpool move five points clear at the top of the group, with Atletico seemingly left to scrap it out with Porto for second place. They have four points each.
Between his two goals, Salah was often on the fringes of a game that was high on adrenaline but low on craft and creativity.
Yet the 29-year-old proved the difference again, adding his 11th and 12 goals of the season and showing why many now have him as favourite for the Ballon d’Or.
Diego Simeone’s plan seemed to be to have Thomas Lemar doubling up with Yannick Carrasco when Salah moved into threatening positions but in the eighth minute, Salah just nipped past both of them.
He collected the ball far out on the right towards the corner flag, danced inside Carrasco, Lemar and then finally Koke before unleashing from the edge of the box, his shot deflecting off James Milner.
Atleti had barely paused for breath when Liverpool made it two, this time Felipe with some uncharacteristically limp defending, his wild clearance plopping up to Keita, who whacked it first time on the volley into the net.
Liverpool were faster, stronger and cutting through Atletico almost at will but little by little the home side resisted and found their way back.
A chipped pass from the impressive Joao Felix had to be poked out of Carrasco's reach at the back post and from the resulting corner, Atleti pulled one back.
Lemar wriggled round the back of Keita and his cross bypassed everyone in the area before landing with Koke, who did well to shoot low into the crowd, where Griezmann diverted in.
The wait for a VAR check gave Simeone a second chance to thrash his arms towards the home crowd, with Atletico believing again.
Felix scuttled clear but Alisson blocked the finish and then Felix surged past Keita on the left touchline.
Prodding inside to Griezmann, the gap was not obvious, but Virgil van Dijk had his angles wrong and the Frenchman's first touch was decisive, piercing him through Liverpool’s defence and offering space for a cool finish.
Lemar and Carrasco both went close either side of half-time and Atletico appeared to have the initiative, Liverpool's early authority lost.
But Griezmann’s red card changed the complexion again, the striker sent off after lifting his foot high enough to connect with the side of Firmino's head, even if his eyes were fixed firmly on the ball.
The dismissal spoiled the flow as Atletico, and Simeone, looked for every chance either to squeeze a Liverpool red card from Siebert or waste time.
They looked like they might hold on for a point until Hermoso blinked in the 76th minute, his clumsy challenge on Jota under a high ball in the area prompting Siebert to point to the spot.
Jan Oblak jumped right, Salah rolled left.