City were sunk by a spectacular free-kick from Jason Puncheon deep into stoppage time.
The late, late goal sealed a miserable day for Stuart McCall's side who suffered their second defeat on the road.
City lost Paul Evans after only 12 minutes following a clash of heads with Puncheon.
Joe Devera rattled the bar before Barnet took the lead just before the break when Eddie Johnson sliced a Puncheon set-piece into his own net.
City had to buck up their ideas for the second half and were level within six minutes of the re-start.
This time Johnson scored at the right end with a thumping finish after Paul Heckingbottom's long throw-in caused problems.
Omar Daley, who had been moved up front, twice hit the post as it seemed City would push on for their second successive victory.
But Barnet responded late on and after Puncheon had clipped the bar with one free-kick, he made absolutely no mistake when Scott Phelan gave away another foul in a dangerous position.
Comments: Our rules
We want our comments to be a lively and valuable part of our community - a place where readers can debate and engage with the most important local issues. The ability to comment on our stories is a privilege, not a right, however, and that privilege may be withdrawn if it is abused or misused.
Please report any comments that break our rules.
Read the rules hereComments are closed on this article