Ben Davies and Harry Kane struck after Gareth Bales opener was cancelled out by Jordan Thompson.
Tottenham booked their place in the Carabao Cup semi-finals as two goals in the final 20 minutes gave them a 3-1 quarter-final win at Stoke.
Spurs looked on course for a routine evening when Gareth Bale put them ahead midway through the first half, but the Championship outfit levelled with their first shot on goal early in the second half as Jordan Thompson converted.
But Jose Mourinho's men regrouped and won the tie thanks to impressive strikes from Ben Davies and Harry Kane, sending them through to the last four.
That means they are just two wins away from winning the competition and finally ending their 12-year trophy drought, something Mourinho was brought to the club to do.
They will fancy their chances as the Portuguese has a liking for the League Cup, having won it three times with Chelsea and once with Manchester United.
This was always going to be a challenge for Spurs and whether they could pass the acid-cold, windy night in Stoke's test, and Mourinho showed how seriously he was taking the tie by starting Kane in attack despite being in the middle of a gruelling run of games.
Kane could have scored early as after a slick move he was played in by Matt Doherty but his shot was beaten away by Andy Lonergan, the Stoke goalkeeper making his first appearance since featuring for Rochdale in March 2019.
Stoke had come into the game with a miserly defensive record, so it was important for Spurs that they drew blood early and Bale stepped up.
The Wales international scored one of his most memorable goals of his first spell at the club at this ground, when he volleyed superbly into the top corner 10 years ago. This one was not as spectacular but arguably more important as he deftly diverted Harry Winks cross into the bottom corner to break the deadlock. This also felt like an important night for Dele Alli as he battles to save his Spurs career and he played an influential role. He should have ended the first half with at least one goal but Lonergan's impressive form continued.
First the 37-year-old kept out a low shot with his feet, after Kane had played Alli in, and then his outstretched hand kept a low curling effort from going into the bottom corner. Bale was replaced at half-time by Son Heung-min, presumably because of an injury, but Spurs did not enjoy the opening period of the second half as they completely shot themselves in the foot and allowed Stoke to equalise.
Eric Dier missed a header and then an interception, allowing the hosts to break down the right, and Jacob Brown found Thompson at the far post to ram home his first goal for the club. That changed the complexion of the game completely as Spurs again found themselves doing the chasing and the frustration was beginning to mount. However, it was ended by the unlikeliest of sources as Davies - first goal in over three years saw the Premier League side regain their lead in the 70th minute.
The ball fell to the left-back 25 yards out and he drilled a low shot into the bottom corner with a finish that was more akin to his Wales team-mate Bale.
Spurs thought they had the game wrapped up when Kane robbed Danny Batth of possession and played in Son who coolly finished, but the linesman wrongly put his flag up. In the end, Kane took matters into his own hands and plundered his 16th goal of the season with nine minutes remaining. Moussa Sissoko rolled him in on goal after Stoke lost possession and the England captain lashed home in impressive style.