En ganska händelsefattig första halvlek avslutades med att Marko Arnautovic satte 1-0 för Stoke, precis innan pausvilan. Bojan Krkic stod för assisten till målet.
Matchen gick till förlängning eftersom Stoke behöll sin 1-0-ledning ordinarie tid ut.
Liverpool tryckte på för en kvittering och ett avgörande, men lyckades aldrig hitta nätet under de första 90 minuterna.
Den första förlängninskvarten slutade mållöst. Det gjorde även den andra förlängningskvarten och därför gick matchen till straffar.
Straffläggningen vann Liverpool med 6-5.
Nu väntar antingen Everton eller Manchester City i finalen den 28 februari på Wembley i London.
Liverpools startelva: Mignolet, Flanagan, Toure, Sakho, Moreno, Lucas, Can, Henderson, Milner, Lallana, Firmino.
Stokes startelva: Butland; Johnson, Wollscheid, Muniesa, Pieters; Whelan, Afellay; Walters, Bojan, Arnautovic; Crouch.