Jairo Riedewald was the unlikely super-sub for Patrick Vieira after his goal eight minutes from time fired Crystal Palace to a hard-fought 2-1 win over Stoke and took them a step closer to Wembley.

Cheikhou Kouyate had seen his early second-half effort for the hosts cancelled out by Josh Tymon's close-range finish to leave the FA Cup fifth-round tie finely poised.

Vieira, despite needing a winner, turned to Riedewald over two recognised strikers and saw the decision pay dividends with the ex-Ajax player scoring his first goal in 13 months from only his fifth appearance of the season to send the Eagles into the quarter-finals.

A lightshow preceded kick-off in London but an inconspicuous start followed despite both teams forcing corners during the opening 10 minutes.

Palace made five changes from the weekend draw with Burnley and Vieira went strong again but Ebere Eze remained on the bench – even though he had started in the previous two rounds.

Jordan Ayew was one of those brought into the starting XI and embarked on a mazy run early on, but it ended with Michael Olise’s scuffed shot hitting Jean-Philippe Mateta and being deemed offside.

Stoke, who also shuffled their pack with four players recalled from the late loss at Bournemouth, had the first chance of note when Romaine Sawyers headed over Jordan Thompson’s cross after 21 minutes.

The hosts finally started to up the ante after half an hour with Olise having penalty appeals waved away following a coming together with Manchester City loanee Taylor Harwood-Bellis but it was not a sign of things to come, with Wilfried Zaha and Liam Moore clashing in the only other flashpoint of the half.

Vieira’s last professional game occurred against Stoke for the Citizens in the 2011 FA Cup Final but his side were no closer to Wembley at the break with the score still goalless.

Chances started to become more frequent following the restart, with James Chester’s misjudgement in the air allowing Ayew to run through down the right and yet his centre was poor with Moore able to intercept to deny Zaha and Mateta at the back post.

Not long after, Stoke’s Nick Powell was inches away from converting Josh Maja’s deflected effort before the opener did arrive with the hosts’ first shot on target in the 53rd minute.

A short corner from Olise found Zaha, who picked out the unmarked Mateta inside the area and although his shot took a touch off Tommy Smith, Kouyate was on hand to side-foot home from seven yards for his first goal since 2020.

The celebrations of the recent Africa Cup of Nations winner were short-lived, though, when Stoke equalised five minutes later.

Sawyers was able to beat Will Hughes by the byline and produced a wonderful cross with the outside of his boot that left-back Tymon converted at the back post to level.

Michael O’Neill turned to top goalscorer Jacob Brown soon after and saw Thompson waste a fine chance on the half-volley before Vieira made a double substitution of his own.

A smattering of boos greeted his decision to introduce captain Luka Milivojevic and Riedewald despite the presence of Eze, Christian Benteke and Odsonne Edouard on the bench.

It would eventually pay off, but only after Joachim Andersen headed Moore’s chip off the line with Jack Butland out of his goal.

The winner came when Jack Bonham punched Conor Gallagher’s cross only as far as Riedewald, who controlled on his chest and fired into the bottom corner to ease the tension at Selhurst Park.

It vindicated Vieira’s decision and sent Palace into the last eight with Stoke’s best run in 10 years ending with a battling display.