Andy Gabriel scored a last-minute try to hand promotion-chasing Keighley a vital victory and cap a stunning late fightback.
Barrow led 17-8 with just four minutes remaining but Rikki Sheriffe pulled a try back for the hosts and then Gabriel went over with the clock ticking down.
There was still time for the Cumbrians to pilfer the points, however, when they were awarded a penalty on halfway. But Brad Marwood’s long-range effort was narrowly off target.
Keighley winger Paul White touched down in the corner to open the scoring after a period of prolonged pressure on the Raiders’ line.
Barrow scored out of nowhere when replacement Brad Crellin swapped passes with Liam Campbell and touched down.
Six minutes after the restart, the Raiders struck again when, after forcing a drop-out, the excellent Peter Lupton weaved his way through the home defence to score a fine individual try.
With 21 minutes remaining, player-coach Paul March showed quick thinking to take a quick penalty tap and touch down from close range.
Danny Lawton missed the conversion again to leave Keighley two points adrift at 10-8 and a drop-goal from Marwood then stretched Barrow’s lead further.
Barrow replacement James Duerden then scored a fine individual try but Sheriffe and Gabriel came to the rescue late on for Keighley, who were then left relieved by Marwood’s late miss.
Keighley Cougars: Guzdek, Gabriel, Lawton, Rikki Sheriffe, White, March, Darville, Law, Feather, Tahraoui, Lynam, Pursglove, Dickinson. Substitutes: Peltier, Cherryholme, Bailey, Jesse Sheriffe
Barrow Raiders: Campbell, Pitman, Hankinson, Litherland, Toal, Lupton, Ward, Bullock, Mossop, Harrison, Nicholson, Briscoe, Toal. Substitutes: Marwood, Dawson, Duerdan, Crellin.
Referee: A Sweet (RFL).