Inverness continued their impressive run of results against Rangers this season despite having a man dismissed early in the game at Ibrox.
Dargo celebrates his late equaliser
Visiting skipper Darren Dods was sent off for a professional foul after 14 minutes and Charlie Adam found the net with the resulting free-kick.
Rangers squandered a number of chances, with Kris Boyd guilty of profligacy.
But Inverness pushed on late in the game and were rewarded when Craig Dargo shot home in the 82nd minute.
Inverness won at Ibrox earlier this season and also claimed maximum points when Rangers travelled north in December.
Rangers should have opened the scoring in the fifth minute when Dado Prso fed the ball through to Barry Ferguson.
But, with goal gaping, the Ibrox skipper was denied by a fine block from Inverness goalkeeper Michael Fraser.
Nacho Novo snatched at a close range chance before the game took a huge swing in Rangers' favour.
Inverness captain Dods was shown a red card for impeding Kris Boyd once the striker had headed the ball beyond him.
And, from the free-kick, Adam blazed the ball through the defensive wall and past the stranded Fraser.
The dismissal prompted Inverness to make an early change, with forward Markus Paatelainen sacrificed for centre-half Stuart McCaffrey.
Adam blazed in a free-kick for Rangers
However, the Caley Thistle defence were soon under pressure again when a long ball into the box fell to Ian Murray and he was not too far away with a curling shot which dipped just over.
Boyd then had a go with a drive from long range that skidded narrowly wide.
The home side appeared to ease off as the first half went on and Inverness were finding it difficult to get forward.
Soon after the restart Boyd raced into the box after meeting a long ball from Murray only to rifle harmlessly into the side-netting.
Alan Hutton then whipped a dangerous ball into the box but Dado Prso's header was well off target.
Boyd when he bundled through with the ball fell into the six-yard box but Fraser got down smartly to block.
The normally prolific Boyd was having an off day and he then scooped a shot over from close range.
Inverness were growing in confidence, pushing more men forward and it needed a good save from Allan McGregor to tip over a Russell Duncan free-kick.
Barry Wilson then gave McGregor a scare with a shot that screamed over the crossbar.
Boyd flashed a half-volley wide before the visitors stunned the Ibrox crowd with a late equalising goal.
Graham Bayne flicked a deep cross into the path of Dargo and the striker found the net despite McGregor getting a hand to his scuffed strike from six yards.
Rangers: McGregor, Hutton, Weir, Papac, Murray, Novo (Burke 67), Ferguson, Hemdani, Adam, Boyd, Prso (Sebo 81). Subs Not Used: Robinson, Thomson, Ehiogu, McMillan, Shinnie.
Booked: Novo, Adam.
Goal: Adam 15.
Inverness CT: Fraser, Tokely, Dods, Munro, Hastings, Duncan, Rankin, Hart (Wilson 73), Paatelainen (McCaffrey 21), Dargo (McSwegan 90), Bayne. Subs Not Used: Ridgers, Soane, Sutherland, McAllister.
Sent Off: Dods (14).
Goal: Dargo 82.
Ref: W Collum