Alex Smithies 4
Made a smart early save from Marcus Forss before denying Ivan Toney with a world-class diving stop from point-blank range. Absolute howler for Tariqe Fosu's goal, though. Frustrating.
Curtis Nelson 8
Was terrific at the back all evening, backing up his solid display at the weekend. Won the penalty with his headed effort at the other end too. Another top display.
Aden Flint 8
Made a couple of really key interceptions from crosses and was huge in the air. Came into his own late on and stood tall when the pressure mounted.
Ciaron Brown 8 (star man)
A really, really impressive outing from the defender. Against one of the best players in the league, he kept Ivan Toney quiet all night. A coming-of-age display from him.
Tom Sang 7
Didn't see too much of the ball in an attacking sense but grew into it as the tie went on. Limped off late in the second half.
Will Vaulks 6
Had to get through a lot of legwork in the middle of the park. Astute in defence and got forward when he could. Was the pick of the midfielders.
Marlon Pack 5
Had one heart-in-mouth moment when he gifted Ivan Toney with a chance from an errant back pass. Didn't add too much to the attack.
Joe Ralls 6
Neat and tidy in possession and tried to add to the attack when he could.
Perry Ng 7
Looked decent enough on the left. Had no real issues, although you sense he wants to get involved in attack more than he does.
Harry Wilson 8
Showed some real class and silkiness with the ball at his feet. Looked the most likely to architect something for City all night and it was his free-kick that led to the penalty.
Kieffer Moore 7
Struggled to really get in the game. You feel for him when he doesn't have natural runners coming off him. Coolly slotted home his penalty to notch his 18th of the season.
Sheyi Ojo (on for Pack 73) 7 - Injected real pace and life into the Cardiff attack. Was really dangerous on the break.
Leandro Bacuna (on for Wilson 73) 7 - Same as above, really, but was then forced to drop into right back, where he did well, too.
Jordi Osei-Tutu (on for Ng 81) 7 - So good to see him back on the pitch, looked bright in the final few minutes.
Josh Murphy (on for Moore 81) 7 - Another who sparked a bit of life into proceedings late on. Did well.
Jonny Williams (on for Sang 86) NA