Ini dilakukan oleh James Milner sang gelandang Liverpool yang menemukan ruang di dalam kotak lawan.
Ia menyusul permainan kuat dari Joel Matip dan memilih Carvalho untuk menyeret bola ke sudut bawah.
Ake terhubung dengan umpan silang Kevin De Bruyne yang sundulannya kemudian juga diselamatkan oleh pemain nomor dua Liverpool.
Darwin Nunez bertemu dengan tendangan bebas Andy Robertson yang luar biasa, tetapi mengalihkan tendangan voli kaki sampingnya melebar dari tiang untuk menutup pembukaan tanpa henti.
Liverpool yang merombak lini tengah di babak pertama juga kehilangan Milner karena cedera hamstring, saat Fabinho dan Alex Oxlade-Chamberlain masuk untuk menggantikan Stefan Bajcetic dan pencetak gol Carvalho.
Saat pemain pengganti baru masuk, Man City membuat diri mereka unggul 2-1 karena umpan panjang Rodri dijatuhkan dengan rapi oleh Riyad Mahrez di dalam kotak.
Hanya 80 detik setelah gol Mahrez, Nunez menerobos ke kiri setelah umpan menakjubkan dari Oxlade-Chamberlain sebelum memilih Salah untuk mencetak gol ke gawang yang kosong.
Umpan silang De Bruyne bekerja dengan sangat baik di menit ke-58, ketika rutinitas tendangan sudut pendek diakhiri dengan sundulan Ake ke tiang belakang.
Manchester City mengambil langkah lain menuju mahkota Piala EFL kelima dalam enam musim, dan mereka akan menghadapi Southampton di perempat final.