A first-half hat-trick from Luke Dorn helped London Broncos beat Castleford and move off the bottom of the Super League table.
Adam Milner gave the hosts the lead but London fought back with tries from Chris Bailey, Dorn's treble and Kieran Dixon before Danny Orr went over for Cas to make it 30-10 at the break.
Dorn grabbed a fourth after Danny Griffin had reduced arrears.
Griffin scored again but Tony Clubb scored the final try for Broncos.
London have now won two successive games for the first time this season, while Cas have lost four in a row.
The hosts had started brightly and led when Milner raced clear from 20 metres to cross the line and Jamie Ellis converted.
London responded Bailey went over from Craig Gower's pass and Michael Witt scored the first of his seven conversions.
They forged ahead when Dorn latched onto Witt's clever kick and grounded the ball before O'Callaghan scythed through the Castleford defence and sent the supporting Dorn racing under the posts and Dixon grounded from a kick through to put the visitors firmly in charge at 24-6.
Cas replied when veteran Orr dummied his way over the line from close range but their soft underbelly was exposed again when Bailey broke clear again and sent Dorn sprinting clear for his hat-trick score.
Nine minutes after the restart, a 40-20 kick from Ellis led to Griffin bundling his way over and Ellis's conversion cut London's lead to 14 points.
Any hope they had of getting something from the game was ended shortly afterwards though as more slick handling led to Witt and Gower combining to send Dorn over for his fourth try of the match.
Griffin raced over in the right corner with nine minutes remaining and Clubb added another try for London late on to round off a good day.
VIEWS FROM THE DRESSING ROOMS
Castleford coach Ian Millward:
"When we scored at 6-0 I thought we had a fair bit of energy and we could have gone 12-0 up but then we conceded two tries from kicks.
"We've got eight injuries but we've just disintegrated in the past two games.
"Defensively and attacking wise, we had no rhythm and confidence, which was there for all to see."
Broncos caretaker manager Tony Rea:
"League position is not something we've talked about or even thought about to be honest.
"The key for us is playing together as a team and caring about what we do.
"We'll end up where we end up - the most important thing is the integrity of the place.
"The challenge is to make sure everybody was contributing and finding a way to put something into the performance, and people did that today."
Castleford: Owen, Youngquest, Griffin, Snitch, Thompson, Johnson, Ellis, Millington, Orr, Huby, Mitchell, Jones, Milner.
Replacements: Emmitt for Millington (22), Massey for Huby (19), Hudson for Mitchell (27), Holmes for Milner (27).
London Broncos: Dorn, Dixon, O'Callaghan, Howell, Caro, Witt, Gower, Kaufusi, Randall, Wheeldon, Melling, Bailey, Clubb.
Replacements: Bryant for Kaufusi (21), Rinaldi for Randall (26), Krasniqi for Wheeldon (23), Bolger for Clubb (21).
Ref: R Silverwood (RFL).