Lionel Messi scored twice, including his 600th goal for Barcelona, to spoil Liverpool hopes.
There was plenty of attacking intent from these two five-time European champions but it was the home side who took the lead when Jordi Alba's fine cross was expertly guided past Alisson by Luis Suárez.
Sadio Mané skied a presentable chance to level before the break while James Milner, twice, and Mohamed Salah forced Marc-André ter Stegen into saves after it. Lionel Messi, not for the first time, proved to be a class apart.
Barça's talisman poached their second after Suárez had rattled the bar before giving his team a healthy cushion to take to Anfield with a sensational free-kick to bring up his 600 for the Catalan club.
Key stats
3: Barcelona have scored three or more goals in eight of their last ten UEFA Champions League knockout-stage home matches.
12: Suárez's last 12 UEFA Champions League goals have come at Camp Nou.
600: Messi's second of the night was his 600th for Barcelona.
26: Messi has now scored 26 goals in 33 games against English opponents – more than against teams from any other country.
32: Barcelona extend their competition record to 32 home matches unbeaten.
500: Suárez's strike was Barcelona's 500th in the UEFA Champions League era, group stage to final.
Source: uefa