Salah, who has now scored 43 goals since his summer move from Roma, scored twice and assisted two other goals. He curled his first into the top corner from the edge of the box - then clipped the ball over Alisson for a second.
Salah then ran down the right and squared for Sadio Mane to make it 3-0 - before doing the same to set up Roberto Firmino.
Liverpool then became only the second team to score five goals in a Champions League semi-final match when Firmino headed in James Milner's corner.
With his side leading 5-0, Reds boss Jurgen Klopp took off Salah - and Roma gave themselves a chance for next week's return leg at the Stadio Olimpico.
First Edin Dzeko lashed home from Radja Nainggolan's pass, then Diego Perotti put a penalty into the top right corner after Milner handled Nainggolan's shot.
Roma need only look to the last round for inspiration, when they lost the first leg in Barcelona 4-1 before winning 3-0 in Italy. A repeat of the latter scoreline this time would take them into the final against Bayern Munich or Real Madrid.
Klopp revealed after the game that England midfielder Alex Oxlade-Chamberlain, who left the pitch on a stretcher after injuring himself while making a tackle, has suffered "probably a really bad injury".