Had a lot more to do in the second half and produced a stunning reaction save from Fabian Delph late, before making another world-class stop in the dying embers. Has proved a point-winner several times this season and tonight was another such occasion.
Captained his side ably, and the fact that the Bluebirds kept a clean sheet was in no small part down to him. The skipper did target a win before the game, though, and so will be disappointed with the lack of fire shown by his teammates.
Created unnecessary pressure for himself early on after a needless mistake in his own half but defended well for the most part.
Defended well for the most part, even though Aston Villa's inability to score was mostly down to its own profligacy and not any Cardiff heroics at the back.
K. Théophile Catherine
Brought in at right back by Ole Gunnar Solskjaer instead of Fabio, the defender impressed when trying to beat his man down the wing.
The Chilean was not at his best for the Bluebirds tonight, with the Villa midfielders leaving him stranded on more than one occasion. His performance did not prove too costly, however, though Solskjaer will want more from the defensive midfielder as the battle against relegation intensifies.
Hit the bar early on with a great curling shot from outside the area and was all over the pitch, covering plenty of ground. Generally, the winger caused plenty of problems for the Villa defense.
Weirdly, the winger scored an offside goal from a corner in the first half. But Zaha's best quality remains his skill on the ball, with the 21-year-old regularly finding pockets of space and always needing an extra challenge to stop him. Could be accused of being greedy on the ball, though.
Made plenty of inroads early for the home side as his pace and trickery caused problems for the opposition yet again this season. Was forced off with injury after around half an hour, though, and Cardiff fans will be hopeful it is not a long-term problem.
Hit the post early on after a great run into the box and a vital save from Brad Guzan, with the chance briefly giving Cardiff the momentum. Forced a save minutes later, too, and fought valiantly for every ball.
Solskjaer was brave to go with two strikers today and Jones certainly put plenty of work in, pulling wide right and delivering crosses for Fraizer Campbell. The Trinidadian could also have won a penalty after 19 minutes, but very little noise was made in the way of an appeal. His weakness was his shooting - not ideal for a striker.
Made an important save from Campbell early, then coped well under a challenge from the same striker later in the first half. Had little to do after the break.
Made strong tackles early and coped well throughout the 90 minutes. The likes of Kenwyne Jones did not give Villa too much trouble at the back, but alertness in defense was still needed, with Baker showing plenty of it.
Crosses seemed to be the name of the game tonight, and Bertrand was one of Aston Villa's better crossers of the ball from the left-hand side. Did little otherwise, though, despite displaying a high work rate.
Got forward regularly for set-pieces and coped well in one-on-one duels with Campbell. This was an encouraging return from injury for the Villa skipper.
Defended ably but also got forward with considerable regularity. Did not make any significantly game-changing contributions, however, before he was replaced by Andreas Weimann with 20 minutes to go.
Got forward to hit a dangerous shot at Marshall early, while also beating Medel on the ball on more than one occasion. In the second half, the midfielder hit an even more dangerous shot that forced the Cardiff goalkeeper into action.
Helped his side win the midfield battle but ultimately produced an average performance in what proved a very dull encounter.
It might be more his manager's fault, but Albrighton was far too direct, with the winger being too quick to cross the ball into the box. Did produce a good delivery at the end of the first half, though, which Christian Benteke should have put away.
Made some important clearances from corners and provided plenty of penetrating crosses into the Cardiff box. Also surged into the danger area in the second half but missed his shot instead of teeing up a furious Christian Benteke.
Headed straight at Marshall early and seemed to win most - if not all - of his aerial duels. He could have done with better service for the most part but, when he did receive a great cross at the end of the first half, he did not turn it in.
Pulled wide left constantly but never produced any of his usual magic, playing some very poor passes at times. Was also wasteful with his chances - especially when he could have won the game late. His biggest problem was the fact that his side was forced to take control of the game instead of hit Cardiff on the break.
Replaced the injured Mutch in the first half but was virtually anonymous in terms of any noteworthy contribution thereafter.
Came on for Zaha just after the hour mark but failed to change the game for the better. In fact, his introduction seemed to make things worse, as a horror pass to Campbell that simply rolled off the pitch for a throw demonstrated late.