Jake Forster-Caskey’s 74th-minute winner earned Charlton a brilliant victory away at promotion-chasing Bradford City on Saturday afternoon.
The strike made it seven points in a week for Karl Robinson’s Addicks and condemned the Bantams to only their third defeat in their last 38 home matches.
The visitors defended superbly throughout the 90 minutes and were also, five minutes from time, indebted to two incredible saves from Ben Amos to secure the points.
In terms of team news, Karl Robinson made two changes to the side that began the midweek draw at Oxford United with Ezri Konsa and Billy Clarke coming into the side.
The game’s first real chance fell the way of Charlton on five minutes. When it arrived, they came extremely close to breaking the deadlock.
Holmes – who passed a fitness test on Friday - dribbled the ball forward and sent a left-footed drive towards the top corner, only for home stopper Colin Doyle to brilliantly flick his effort over the crossbar.
The goalkeeper claimed the corner that followed and a minute later the hosts created their maiden opening when Jake Reeves – a Charlton supporter – saw a strike deflect wide of Amos’ goal.
A couple of high balls into the box were well dealt with by Konsa and then Naby Sarr, as the hosts began to grow into the game, and at the other end Josh Magennis rose highest to meet a Holmes cross but could only nod over.
Former Bantam Clarke almost had a goal on his return to Yorkshire on 28 minutes. Solly found him with a quick throw-in and he dragged the ball onto his left foot before firing a shot inches wide of the target.
The chance was probably the Addicks’ best of the game to-date and Bradford quickly responded by carving out a great opportunity of their own.
Nathaniel Knight-Percival hooked a Tom Field free-kick back into the danger area where it was met by the head of striker Charlie Wyke. From point-blank range, though, Amos made himself big to keep it out.
A chance fell Charlton’s way a couple of minutes before the break when Fosu was fouled 25 yards from goal. But Holmes could only curl the free-kick over the bar and the two sides headed in level.
A loose ball almost fell Fosu’s way inside the box moments into the second period and at the other end Reeves fired one over.
In what was a quick start to the second period, a Holmes cross bounced off the crossbar before Bradford’s Timothee Dieng hooked a close-range effort over the top for the hosts.
Forster-Caskey tested Doyle from 25 yards with a curling strike that the stopper pushed behind and, in increasingly difficult weather conditions with the rain driving down, Charlton then forced him into action again when he had to beat away a Fosu free-kick.
Fifteen minutes from time, Charlton broke the deadlock. Solly reached the byline and crossed towards Fosu at the far post where he volleyed at goal and Forster-Caskey followed it in to direct it over the goal-line.
The Addicks protected their goal brilliantly after taking the lead but goalkeeper Amos was called into action on 85 minutes. And he made a brilliant double save to preserve his side’s advantage.
First, he denied Wyke from point-blank range after he connected with cross from the right and seconds later he bettered that by getting vital finger tips to Knight-Percival’s corner-bound header.
It was a superb double stop from the Addicks stopper and it ensured that the Addicks travelled back down south with a big three points in the bank.
Bradford: Doyle, Reeves, Kigallon (c), Law, Dieng, Wyke, Field, Gillead, Hendrie, Knight-Percival, Patrick.
Subs (not used): Raeder, Thompson, McCartan, Hanson, Jones, Devine, Robinson.
Booked: Dieng 35 (foul on Konsa), Reeves 40 (foul on Forster-Caskey), Knight-Percival 71 (foul on Fosu)
Charlton: Amos, Solly (c), Bauer, Konsa, Sarr, Kashi, Forster-Caskey, Fosu, Clarke, Holmes, Magennis.
Subs (not used): Phillips, Dasilva, Jackson, Aribo, Reeves, Ahearne-Grant, Dodoo.
Goal: Forster-Caskey 74
Booked: Bauer 44 (persistent fouling)
Attendance: 20,066 (624 from Charlton)
Referee: D Bond