Swindon started brightly, but it took until 34 minutes before they opened the scoring when Tommy Mooney headed in his 19th goal of the season from a O'Hanlon cross.
Although Grimsby didn't get much chance to control the game they did manage a few good shots on goal which Rhys Evans had to save well to deny Grimsby a goal.
Brian Howard should have scored in the first half, but hit the bar, and rebounded back, only for Mooney to miss the second shot.
Seconds before half time Mooney scored his 20th goal of the season with a close range shot to put the game out of Grimsby reach.
In the second half Evans was forced to make more good saves to keep a clean sheet, and help make up for picking up the back pass at Plymouth last week.
A streaker ran onto the pitch mid way thoough the second half dressed only in a pair of green pants, he made it from the Town End half of the Nationwide stand all the way onto the Stratton Bank before being arrested.
Brian Howard hit the bar for a second time, this time from a free kick just outside the box, the ball bounced down, but didn't cross the line.
Howard was then sent off on 87 minutes for violent conduct, after a hit out at a Grimsby player who had just fouled him.
Overall a good win, Swindon didn't look in any doubt of losing the game. Swindon were able to regain their place in 4th in the table ahead of this weekend's away trip to Wrexham.