Substitute Adrian Patulea made a dream start to his Football League career as Lincoln won for the first time this season.
Both teams struggled to create chances in dreadful conditions, but the introduction of Patulea for his debut midway through the second half shook the game up.
The Romanian had a hand in Lincoln's opener and then scored their second goal himself to ensure three points.
Barnet, who have now lost all five league games this season, looked a poor outfit.
They almost went behind after only 12 minutes when Lincoln's Paul Green fired in a powerful shot from outside the box.
Barnet's new keeper Ran Kadoch could only push the ball out but recovered before any Lincoln striker could take advantage.
Kadoch was almost caught out by a cross from Kevin Gall which ended up on the roof of the net.
But the keeper was then forced to limp off with a thigh injury after just 33 minutes of his debut for the Bees.
Veteran Lee Harrison took his place but was not really troubled until late in the second half.
At the other end, Barnet's only real chance came in the 67th minute when a cross from Adam Birchall was just too powerful for Neal Bishop, who was well placed on the edge of the six-yard box.
Harrison saved Barnet nine minutes later when he used his legs to block a goal-bound shot from Lee Frecklington.
Lincoln responded by bringing on Patulea and John-Lewis and the game was transformed.
Patulea won a corner with his first touch and within eights minutes Lincoln were in front.
Patulea was again involved unsettling the Barnet defence with his run into the box. His pass set up John-Lewis whose shot crashed against the foot of the post but N'Guessan followed up to fire into the empty net.
Lincoln grabbed their second goal in the 87th minute when a shot from Dany N'Guessen was blocked and Patulea followed up to score.