Liverpool drew 3-3 with Benfica at Anfield to progress 6-4 on aggregate, while City drew 0-0 at Atletico Madrid to win 1-nil on aggregate.
The Reds will now play Villarreal in the last four, while City play Real Madrid.
Liverpool remain on course for an historic quadruple, having won the League Cup, they meet City in the FA Cup this weekend and are just a point behind City in the race for the Premiership.
They started the day with a 3-1 lead, but were made to work by the Portuguese side.
Manchester City produced a mature and disciplined performance to hold off the challenge of Atletico Madrid.
Knowing a clean sheet would be enough to seal the tie, City kept their cool in the face of a hostile home crowd and intimidation from a physical Atleti side showing far more ambition than in the first leg.
Real Madrid, who edged past Chelsea in a thrilling quarter-final tie on Tuesday, now stand between City and a second successive appearance in the final of Europe's premier club competition.
Manchester City have never won the Champions League, while the last of Liverpool's six itles was in 2019.