The Bees bounced back from Saturday's defeat, as goals from Ben Richards-Everton and Tomi Adeloye secured a league double over Weymouth.
The Bees first chance came on 15 minutes, as the returning Sam Skeffington saw his powerful strike beaten away by the Weymouth goalkeeper, after the ball fell to him 22 yards from goal.
Simon Bassey's side continued to dominate proceedings and nearly took the lead on 25 minutes after a nice passing move finished with Ephron Mason-Clark forcing Ross into a fine save.
The Bees pressure told just ten minutes before half time, as Ben Nugent fizzed a ball that dropped from a free-kick and found Ben Richards-Everton who could not miss from five yards out.
Weymouth almost responded immediately as McCarthy capitalised on a defensive mix up, only to skew his effort well wide of Adam Parkes' goal.
The hosts had a couple of free-kicks in the dying moments of the half, but didn't make the most of the opportunities, meaning the Bees deservedly led at the break.
It should have been two just after the break, as Skeffington released Adeloye who was clear on goal, only for his effort to be saved by Ross.
The game took a turn on 57 minutes after Anthony Wordsworth was shown a straight red card for a two footed challenge, the referee was in no doubt with his decision and the Bees could have little complaint.
Adam Parkes was soon called into action as he made a great reflex stop from a backpost header after a dangerous cross into the box from Shields.
The Bees almost doubled their lead through Alex McQueen, after his free-kick floated in the wind and forced Ross to tip the effort over the crossbar.
Bassey's side dealt with their man disadvantage well and looked resolute throughout, limiting Weymouth to few opportunities whilst looking threatening through Mason-Clark and Adeloye.
The sucker punch counter attack came on the 80th minute as we doubled our advantage, as the Bees cleared a corner and Adeloye raced clear with no one around him before slotting through Ross' legs and into the net.
The Bees stood firm to the late Weymouth pressure to secure all three points on the road for a second weekend in a row. After a strong display it was no less than Simon Bassey's side deserved.
Barnet: Parkes (GK), McQueen, Richards-Everton, Nugent, Vaughan (c), Skeffington, Kefalas, Taylor, Wordsworth, Mason-Clark (Petrasso 89'), Adeloye (Baker-Richardson 89').
Subs not used: Callan, Vasiliou, Preston.