Reece James scored the winning penalty in a shootout as Chelsea reached the last 16 of the Carabao Cup at Aston Villa’s expense.

The full-back fired home the Blues’ final penalty to win the shootout 4-3.

A goal from young Villa forward Cameron Archer had ensured a draw in normal time, levelling with a header after Timo Werner had put the Blues ahead.

Chelsea will host Southampton in the last 16 of a competition they last won in 2014-15.

Wednesday’s result extends the reigning European champions’ unbeaten start to the season, which has also seen them top the Premier League with 13 points from five matches.

It looked as though they were going to win the game in normal time when Werner rose in space to meet James’ cross and head home his first club goal in 11 matches.

The German should have added to his tally soon after but dragged a shot from close range wide of the target.

But Villa, who had given as good as they got during the game, deservedly levelled when Archer showed brilliant technique to steer in a headed equaliser.

It made it four goals in two EFL Cup games this season for the 19-year-old, who scored a hat-trick in the 6-0 win over Barrow in the second round.

It was also the first goal from open play that Chelsea have conceded this season.

In the shootout, Ashley Young struck the crossbar with Villa’s second penalty before Kepa Arrizabalaga saved their third from Marvelous Nakamba to hand the advantage to the home side.

Ben Chilwell then struck the bar to take it to the final set of penalties, but James made no mistake to seal the Blues’ progress.

Prince William, Duke of Cambridge (centre), at Stamford Bridge
Prince William, the Duke of Cambridge, and an Aston Villa fan, was at Stamford Bridge to watch the game

Chelsea boss Thomas Tuchel speaking to the club website: “It was a good game full of energy, good chances on both sides between two teams who tried everything to win.

“Aston Villa played very strong, like they did 10 days ago, and again today. We also did very good.

“We had many changes, the team had never played in this formation. This needs a bit of time o



NULL Invalid API key or channelobject(stdClass)#8577 (1) { ["error"]=> object(stdClass)#8570 (3) { ["code"]=> int(403) ["message"]=> string(117) "The request cannot be completed because you have exceeded your quota." ["errors"]=> array(1) { [0]=> object(stdClass)#8558 (3) { ["message"]=> string(117) "The request cannot be completed because you have exceeded your quota." ["domain"]=> string(13) "youtube.quota" ["reason"]=> string(13) "quotaExceeded" } } } }