The young Bluebirds held on to earn a win in their final Under-23 Professional Development League fixture at Cardiff City Stadium.

Cardiff City led by three goals thanks to goals from Samuel Faniyan, Shamar Moore and Danny Ward before Joe Muscatt and Connor Hall pulled goals back.

Ward, goalkeeper Alex Smithies and Jazz Richards were the over-age senior professionals selected by the Bluebirds, while new teenage trio Shamar Moore, Samuel Faniyan and Tyone Kirunda were called up.

Moore and Faniyan, both aged 18, are former Reading players, while Kirunda has linked up with Cardiff from Charlton Athletic.

Striker Ward went close after two minutes when his powerful, low shot was pushed away for a corner.

Faniyan headed Cardiff’s first goal from a Cameron Coxe cross midway through the first half, while goalkeeper Smithies made  smart save to keep Bolton out.

Bolton were fortunate when Faniyan’s effort hit a post and Moore fired wide from the rebound.

City went 2-0 ahead just after the half hour when Moore ran onto a Richards pass and his shot went between the legs of goalkeeper James Aspinall.

Bolton kept battling and went after 39 minutes when Cardiff’s Laurence Wootton headed off the line.

Ward scored to put Cardiff 3-0 ahead after 77 minutes, producing a strong run to go past several defenders before firing home from a narrow angle.

At that stage the Bluebirds were in control, but Bolton hit back quickly. Less than a minute after Ward’s strike, Muscatt went for goal from a free-kick and his effort deflected off a defender to leave Smithies helpless.

Hall then netted a second for Bolton with three minutes left and gave the visitors hope. Cardiff, though, held on to their lead through four minutes injury time to secure victory in their final under-23 match of the season.

Cardiff City: Alex Smithies, Jazz Richards (Connor Davies 61), Cameron Coxe, Ryan Pryce, Joel Bagan (Ryan Kavanagh 73), Tyrone Kirunda, Laurence Wootton, Aaron Bolger, Danny Ward, Shamar Moore, Samuel Faniyan (Dan Williams 75). Sub not used: Warren Burwood (gk), Sam Bowen.

Bolton Wanderers: Aspinall, Brockbank, Muscatt, Senior, Hartshorne, Graham, Tanimowo, Earing, Hall, Brown (White 61), Darcy. Subs not used: Williams, Richards.