For the last-placed Knights, it was their 12th straight loss and they had injury added to insult when five-eighth Jarrod Mullen left the field with what appeared to be a recurrence of a hamstring problem.
When Barba sent Sosaia Feki over in the 26th minute, the Sharks took a 10-0 lead into the break but were unlucky not to be up by more after twice being controversially denied by the bunker.
Holmes was denied in the second minute after picking up a loose ball and sprinting 60m but was ruled to have committed a double movement after being pulled down on the line.
The Sharks were the victim of a video referee clanger in the 30th minute when Barba was denied a brilliant solo try after Bernard Sutton ruled Sharks hooker Michael Ennis took out his Knights opposite Chris Adams in the lead-up.
Barba made up for it just two minutes after the resumption of play when he finished off a brilliant 90m effort started by Holmes and Jack Bird.
And from there the floodgates opened with Gerard Beale and Bird crossing in the space of three minutes to extend their lead to 24 points.
The Knights scored a consolation try when Nathan Ross reeled in a Mitch Barnett bomb in the 64th minute.
- AAP