Jake Evans, Ibrahim Meite and James Waite scored for Cardiff City in their Professional Development League Under-23 home fixture against Charlton Athletic.
The young Bluebirds came from behind to earn victory despite having forward Meite sent off for an off the ball incident with 11 minutes left at Cardiff International Sports Campus.
Evans played his first 90 minutes in six weeks, having fully recovered from injury, and stayed on until he was replaced by Ryan Pryce during injury time.
Lloyd Humphries produced some skilful moments in midfield, while Meite was dangerous in attack before he was dismissed and goalkeeper Matthew Hall produced several smart saves.
Former Southampton, Middlesbrough and Jamaica striker Jason Euell is in charge of the Charlton development team, while Cardiff’s coaches are Jarred Harvey and Andy Legg.
Charlton scored first when midfield player Alfie Doughty found space on the left before firing low into the net after 11 minutes and visiting striker Callum Kealy powerful low drive was superbly saved by goalkeeper Hall before Cardiff hit back.
Meite’s shot from 10 yards was blocked, while Paul McKay’s looping header from a corner was prodded home at the far post to make it 1-1.
City began the second half brightly and Humphries went close to his first goal of the season when his shot from 20 yards flew just wide.
Meite put the Bluebirds in front after 53 minutes when the home team hit Charlton on a counter-attack and the pace striker set off on a rampant run on the right before surging into the area and calmly stroking his shot home.
James Waite tapped home from close range to make it 3-1 after his initial effort was parried back into his path by goalkeeper Ashley Maynard-Brewer.
Midfield player Waite has now scored three goals in two games against the London club.
The next PDL match for Cardiff is at home against Crystal Palace, again at Cardiff International Sports Campus on Monday, October 29.
Cardiff City: Matthew Hall, Paul McKay, Dan Martin, Lloyd Humphries (Tyrone Duffus 69), Ciaron Brown, Jack Bodenham, Laurence Wootton, Jamie Veale, Ibrahim Meite, James Waite, Jake Evans (Ryan Pryce 90). Subs not used: Warren Burwood (gk), Jac Davies.
Charlton Athletic: Ashley Maynard-Brewer, Barton, Toby Stevenson, Taylor Maloney, Joe Cummings, Ryan Blumberg, Alfie Doughty (Brendan Sarpong-Wiredu 62), Ben Dempsey, Callum Kealy (Terrique Anderson 62), Albie Morgan, Jamie Mascoll (Joshua Zemura 74). Subs Not Used: Joseph Osaghae (gk), Luke Carey.