Ivan Cavaleiro fired Wolves into their first FA Cup quarter-final since 2003 as his solitary strike saw off Bristol City at Ashton Gate. The Portuguese diverted home the only goal before the break, after fine work down the right by Matt Doherty, and put Wolves in the hat for last eight.
Wolves were well worthy of their victory against a Robins side who last lost in November, with victory extending the visitors’ own unbeaten run to seven matches. Chances were far from regular at Ashton Gate, but Wolves certainly boasted the best of them.
Doherty rattled the woodwork himself after claiming an assist, while Morgan Gibbs-White passed up the best the chances after the break, being denied by Frank Fielding on the counter attack. As for City, Ruddy made a series of routine saves on his way to a clean sheet.
Wolves arrived at Ashton Gate fully aware of the test ahead of them and settled quickly but couldn’t make the most out of a series of early Joao Moutinho set pieces. Likewise, the Robins were struggling to create any form of chances, with Niclas Eliasson’s free-kick a simple catch for Ruddy.
Then, like a switch, Wolves clicked into gear and produced a fine move to create the opening goal. Conor Coady’s brilliant though ball set Doherty on his way down the right, and the Irishman’s persistence saw him benefit from the ricochet and lay off for Cavaleiro to drill home the only goal.
City responded quickly to their credit, but Callum O’Dowda’s diving header flew harmlessly over the bar. The next chance was to fall to the visitors and Doherty was agonisingly close to the second. The wing-back started and almost finished the move, as Leander Dendoncker and Raul Jimenez combined, before Doherty rattled the corner of post and bar.
As the half progressed, Wolves continued to improve and when Jimenez set up Dendoncker, the Belgian hit a rasping volley which needed pushing behind by Fielding. At the other end, Kasey Palmer got in ahead of Doherty, but his header floated harmlessly over the bar.
With half-time on the horizon, and Jimenez having a penalty appeal turned down, Wolves edged closer to a second, but Willy Boly’s flicked header from a Moutinho’s free-kick drifted just wide. It proved to be the final action of a half which Wolves were the better side.
Half-time: Bristol City 0 Wolves 1
Bristol City came out for the second period with renewed spirit and their double substitution lifted the crowd, but after O’Dowda broke down the right, his cut back was horribly sliced over by Jay Dasilva. Soon after Palmer flashed a free-kick wide of Ruddy’s near post.
While City were improved, Wolves remained in control, without testing Fielding, as Cavaleiro’s long-range effort was blocked before reaching the goal. The introduction of Jamie Paterson raised the noise levels inside Ashton Gate and, after he twinkle-toed his way through, Coady’s block needed keeping out of his own goal by Ruddy.
Moments later Marlon Pack tried his luck from distance but Ruddy was equal to it, before Gibbs-White replaced Cavaleiro in Wolves’ first change. With the second goal still the target, Moutinho’s free-kick needed turning over the bar by Fielding, before Jimenez flicked wide from the resulting corner.
The hosts remained a threat however, and Doherty was well-placed to clear Famara Diedhiou’s effort from near the line, before Pack side-footed straight at Ruddy from the edge of the box. Soon after Doherty hobbled off, with Ruben Neves taking to the field and Saiss dropping into a back three, with Bennett moving to the right.
With eight minute remaining the chance for Gibbs-White arrived, but after racing onto Jimenez’s flick, the youngster’s left-footed effort was kept out by a firm Fielding save. As for City, Ruddy was forced to tip over the bar from Matty Taylor, before Pack missed from a matter of yards out.
Four minutes of injury time involved multiple nervy moments inside the Wolves box, with Romain Saiss and Moutinho amongst the Wolves men to put their bodies on their line to ensure it their team in Monday’s draw.
Full-time: Bristol City 0 Wolves 1
Bristol City: Fielding, Dasilva, Webster, Wright, Brownhill, Diedhiou, O’Dowda, Eliasson(Taylor 46), Kalas, Morrell (Pack 46), Palmer (Paterson 66).
Unused subs: O’Leary, Baker, Watkins, Kelly.
Wolves: Ruddy, Doherty (Neves 81), Bennett, Coady, Boly, Jonny, Saiss, Moutinho, Dendoncker, Cavaleiro (Gibbs-White 70), Jimenez (Traore 90).
Unused subs: Norris, Vinagre, Costa, Ennis.