Alejandro Garnacho was the hero with the Chelsea winger scoring a second-half brace to put his team into the semi-finals of the Carabao Cup.
Garnacho gave the Blues the lead early in the second-half as the visitors improved on a dismal first period in the Welsh capital.
However, Cardiff levelled with 15 minutes of normal time remaining with David Turnbull heading in a Perry Ng cross.
Pedro Neto's deflected strike flew into the bottom corner with less than 10 minutes left to play, before Garnacho wrapped the game up with a fine finish in stoppage time.
With this being said, football.london has rated the Chelsea players based on their performance:
Filip Jorgensen -
First start for Jorgensen since the last round of the Carabao Cup in October. Called into action early on to make a fairly straightforward save from a long-range strike. Good save to deny Isaak Davies on 34 minutes after it took a deflection before arriving to the Dane. 7.
Josh Acheampong -
Back in the side at right-back after impressing in Bergamo last week. An aggressive start, always playing on the front foot to try and win the ball back for the Blues. He did that a couple of times in the early stages and did one of his trademark powerful runs forward. Though there were a couple of times early on where he was caught out a bit defensively. 6.
Tosin Adarabioyo -
Didn't notice Tosin too much which is sometimes good for a centre-back. Did fine. 6.
Benoit Badiashile -
Badiashile gave away a half chance just before half-time with a really sloppy pass. Not his best out there. 5.
Jorrel Hato -
First time the Dutchman has been in the side since the trip to Azerbaijan last month. On that day, he had a nightmare, but he seemed confident enough in Cardiff. In the opening five minutes, he let one run between his legs before passing it to Jamie Gittens. Overall, much more assured display from Hato. 6.
Andrey Santos -
The Brazilian returned to the side as he looked to make an impression to Maresca. Didn't notice him too much but comes up with a crucial assist. 6.
Moises Caicedo -
Back in the side after serving his suspension. Plays a fantastic pass to set Marc Guiu away on 31 minutes, a ball worthy of an assist. Great to have him back in there. 6.
Tyrique George -
George's first start since last month's draw in Baku. Produced a dangerous cross early on but none of his teammates gambled. Looked lively without ever setting the world alight. Hooked at half-time. 5.
Facundo Buonanotte -
Good to see him finally get some more minutes. But he was a bit sloppy, particularly early on. Looked really off the pace, which is understandable given the amount of minutes he has had this season, but he came out a different man in the second-half. He set Garnacho up for his goal with a well-timed pass. Whatever Maresca told him at the break certainly worked. 6.
Jamie Gittens -
Gittens, as always, looked to beat his full-back at every given opportunity. They do not always come off which can be frustrating to watch. Thought he really struggled out there. 4.
Marc Guiu -
Just his third start of the season for the Blues. Plenty of touches early on with the Spaniard looking to link up with those running off him. Good chance on 31 minutes where he forced himself a bit wider than he would have liked and eventually saw his shot saved. Hooked at half-time. 5.
Joao Pedro (on for Guiu 46') -
On for the second-half. Looked bright. Could have had an assist for Hato on 55 minutes. Does really well for Neto's winner, holding the ball up before teeing up Andrey Santos, the man who assisted the goal. 6.
Alejandro Garnacho (on for George 46') -
Also on at the break. Should have done better with a close-range chance with what was one of his first touches of the ball. But it didn't matter, because moments later he found the right connection to give the west Londoners the lead in south Wales. Scores his second deep into stoppage time with a fine finish into the far corner. 9.
Pedro Neto (on for Gittens 66') -
On for the final 25 minutes. The hero. His sixth goal of the season. Mr Reliable for the Blues. 8.
Malo Gusto (on for Buonanotte 66') -
Loses his man for Turnbull's goal. Poor defending. 5.
Trevoh Chalobah (on for Acheampong 86') -
On to help see the game out. N/A.