Né à Digne-les-Bains, Grégory Bernard commence à pratiquer le rugby à XV dans le club de sa ville natale, le RC Digne. Après y avoir évolué au niveau senior, il est recruté en tant qu'espoir par le RC Toulon[2]. Il évolue durant trois saisons au total avec le RC Toulon[3] ; pendant la saison 2005-2006, il évolue en Top 14 et en Challenge européen sous le maillot rouge et noir[1].
Il évolue par la suite avec le Stade rochelais à partir de 2007, puis s'engage avec CA Lannemezan à l'intersaison 2009, qui vient d'accéder à la Pro D2[2].
En 2010, il rejoint l'Union Bordeaux Bègles, paraphant un contrat d'une saison[4]. Ayant accumulé très peu de temps de jeu avec le club bordelais, il s'engage pour la saison suivante avec le FC Auch[2].
Avant la saison 2014-2015, Bernard est contacté par Richard Dourthe, manager de l'US Dax[7] ; il quitte ainsi le club de Tarbes pour rejoindre celui de Dax, signant un contrat de deux saisons plus une optionnelle[8], rejoignant ainsi plusieurs de ses anciens coéquipiers, entre autres Fabien Magnan, Anthony Salle-Canne et Charlie Ternisien[7]. Bernard prend sa retraite sportive à l'intersaison 2017[9].