Manchester City remained on course to lift the League Cup in England for a third successive season after overcoming third-tier Oxford United 3-1 on Wednesday.
They will now face Manchester United in the semi-finals, after their city rivals also overcame Colchester United in another quarter-final fixture.
Pep Guardiola’s side were given a stern test on a wet and windy night at a noisy Kassam Stadium but two goals from Raheem Sterling eventually saw them through.
On their part, Manchester United were frustrated for 51 minutes at Old Trafford by fourth-tier Colchester United.
But England striker Marcus Rashford broke the resistance and an own goal by Ryan Jackson and one for Anthony Martial took the hosts to a 3-0 win.
Of a two-legged semi-final in January, Manchester United manager Ole Gunnar Solskjaer said: “Fantastic days in Manchester. You always want to win trophies and games and we have a nice little draw coming up. Exciting times ahead.”
Meanwhile, Leicester City squandered a 2-0 lead to draw 2-2 at Everton but moved through to the semi-finals after Jamie Vardy scored the decisive spot-kick in the penalty kick shootout.
Brendan Rodgers’s side will face Midlands rivals Aston Villa in the semi-finals after Villa beat a virtual Liverpool youth team 5-0 on Tuesday.
Liverpool’s senior players were all in action on Wednesday in their FIFA Club World Cup victory over Monterrey.
Manchester City have dominated the League Cup under Guardiola but rarely have they been tested quite like they were by Oxford United.
The lower league side managed 18 goal attempts, more than any side against Manchester City since the Spaniard took charge.
Manchester City made eight changes to the team that beat Arsenal on Sunday and lacked their usual authority.
But they did take the lead in the 22nd minute with Joao Cancelo’s deflected effort.
They were caught napping, however, when Matty Taylor rammed home an equaliser 22 seconds into the second half.
Sterling restored Manchester City’s lead in the 50th minute, touching in Angelino’s cross, but Oxford United took charge for a 20-minute spell in which they outplayed their illustrious guests.
Manchester City goalkeeper Claudio Bravo made a succession of saves but substitute Gabriel Jesus broke clear and squared for Sterling to seal it in the 70th minute.
It was the England forward’s 18th goal of the season for his club.
Mikel Arteta, favourite to get the vacant Arsenal job, took his place next to Guardiola on the Manchester City bench in what could be his final game as assistant manager.
Guardiola would not be drawn on that situation.
“We suffered a lot in the second half. At 2-1 they played long balls with throw-ins, corner kicks and we struggled, but it’s okay. We knew before we came here,” he said.
“We played against a top side. So, congratulations for the team, young players and the victory.”
Oxford United manager Karl Robinson said he was “frustrated” that his side had not taken their chances.
“I am really pleased with the players, but my last thought tonight will be `what could have been’.”
Leicester City led with first-half goals by James Maddison and Jonny Evans, but Tom Davies halved the deficit before a Leighton Baines screamer made it 2-2 in the 90th minute.
Everton’s hopes of a glorious comeback victory in Duncan Ferguson’s third game as caretaker manager went flat, though, as Kasper Schmeichel made two saves in the shootout.
Leicester City are in the League Cup semi-finals for the first time since the 1999-2000 campaign, when they won the trophy.