Philip Billing’s strike just after half-time proved enough to condemn Cardiff City to their second defeat in a week, and elevate Bournemouth to the top of the Championship.
After turning in a limp performance in the midweek defeat to Coventry City, the Bluebirds once again struggled to find their creative spark here, albeit against a side many believe will be there or thereabouts when it comes to the promotion conversation this season.
Cardiff, meanwhile, will likely see their top six credentials come under even closer scrutiny, following a fourth defeat in five games.
Billing’s low strike shortly after the interval was no less than the Cherries deserved, although Cardiff very nearly snatched an unlikely point late on when Sean Morrison sent a header cannoning back off the crossbar.
Mick McCarthy had said shortly after the defeat to the Sky Blues that his side would need to produce a much-improved performance if they were going to take anything from a Bournemouth side that arrived in the capital as one of only two Championship teams yet to taste defeat this season.
The Bluebirds boss made three changes for this clash, but there was little sign of an improved showing during a first half that saw City muster just one shot on goal.
Bournemouth, perhaps rather predictably, quickly settled into the contest, and it wasn’t long before they started to flex their attacking muscle.
Hearts were in mouths on 13 minutes when Jaidon Anthony rounded Dillon Phillips, but his ball across the goalmouth was cleared off the line by Aden Flint.
Phillips was then on hand to gather a low effort from Ryan Christie, who also sent a looping header well over the bar moments later.
The 26-year-old remained at the heart of the Cherries’ efforts as they began to dominate possession in the first half, forcing a fine save from Phillips with a fizzing daisy-cutter from the edge of the area.
Kieffer Moore did see a tame effort gathered by Mark Travers at the other end, but it proved a rare exception in a half that saw Cardiff very much on the back foot.
Jefferson Lerma fired narrowly wide as Bournemouth continued to ask questions, but were ultimately left frustrated heading into the interval.
Dominic Solanke then headed over the bar as the visitors seemingly picked up where they left off in the second half, with Cardiff still labouring to make any sort of meaningful mark on the game.
And City’s defence was finally breached on 54 minutes. Adam Smith feeding Billing 25 yards out, with the latter stroking home a wonderful drive that left Phillips rooted to the spot.
McCarthy had seen enough, introducing Rubin Colwill and James Collins just after the hour in a bid to spark a reaction, but it initially did little to stem the tide.
Billing twice came close to doubling his account, curling wide on the edge of the area before warming the palms of Phillips with a stinging free-kick.
The introduction of Joel Bagan then coincided with what was arguably Cardiff’s best spell of the game, the youngster sending a wonderful cross in for Collins, who could only head narrowly over the bar.
Not quite the golden opportunity he missed at Coventry, but still a good chance.
Then again, City would come even closer just a few minutes later.
Collins, this time the provider, hung in a far-post cross that was met brilliantly by Morrison, only for his resulting header to come clattering off the bar.
But a point would, in all honesty, have been ill-deserved for the hosts, with Scott Parker’s side seeing two good chances to kill the game off go begging before the full-time whistle.
Dominic Solanke skewed a half-volley wide, before Billing whistled an angled effort just over the bar following a defensive mix-up in the Cardiff box.
But one goal proved enough for the Cherries, who remain unbeaten and now sit at the top of the table.
For Cardiff, this was another sobering reminder of the sort of quality that will be needed if they are to even entertain the idea of a top six finish this season.
Cardiff City: Phillips; Sang (Colwill 62), Flint, Morrison (c), Nelson, Brown (Bagan 71); Vaulks, Pack, Bacuna; Harris (Collins 62); Moore
Subs: Smithies, McGuinness, Ng, Bowen
Bournemouth: Travers; Zemura, Kelly, Cahill, Smith; Lerma, Pearson, Billing; Christie (Rogers 80), Solanke (Lowe 88), Anthony (Mepham 90+2)
Subs: Nyland, Brooks, Marcondes, Stacey
Goal: Billing 54