Brookes and Irwin tussled in the opening lap before the latter took a lead heading into Riches.
Moments later and Danny Buchan crashed into Bradley Ray at Agostini to make for the Massingberd-Mundy Kawasaki rider's second race crash in a row.
Watch Josh Brookes storm to victory in BSB Round 5 at Snetterton
Brookes raced back into the lead in the third lap with him and Irwin would continuing to battle at the front. Irwin tried to take the lead at Agostini, but he ran wide to allow Brookes back in to first.
Brooks managed to hold off challenges from Irwin, Tommy Bridewell and Lee Jackson to seal the victory. Irwin finished second and Bridewell third.
'Woah!' - Danny Buchan furious as he crashes at Snetterton
RYDE TOOK WARM-UP TOP SPOT
Kyle Ryde topped Sunday morning's warm up session, waiting until his final lap to pip pacesetter Glenn Irwin and posted his fastest time which put the Buildbase Suzuki rider 0.202s in front ahead of rounds five and six.