Bernhard Gruber stammt aus Bad Hofgastein im Gasteinertal. Als Mitglied des dortigen Wintersportvereines feierte er seine ersten Siege im Kinderbereich im Skilanglauf. Da es nach dem Abbruch der Jugendschanze (als Nachfolgerin der bekannten Bilgeri-Schanze) im Gasteinertal keine der einst vielen Skisprungschanzen mehr gab, begann Gruber im Sommer 1996, im Alter von 14 Jahren, mit dem Skispringen auf der Kindermattenschanze in Bischofshofen. Er trat zum Ski-Club Bischofshofen über, dessen Trainer sein Sprungtalent schnell erkannten und Gruber die nächsten Jahre sehr förderten. Als Toni Innauer auf seine Talente im Skilanglauf und im Sprunglauf aufmerksam wurde, überredete ihn der bekannte ehemalige österreichische Weltklasse-Skispringer 1998 zum Übertritt von den Spezialspringern zu den Kombinierern.[1]
Seit 2003 startet Gruber nunmehr im Weltcup der Nordischen Kombination. Bei der Winter-Universiade 2005 in Innsbruck und Seefeld in Tirol gewann er den Sprint und wurde im Gundersenwettbewerb Zweiter. Seinen Durchbruch im Weltcup feierte er in der Saison 2006/07. Beim letzten Rennen 2006 kam er als Neunter erstmals unter die Top-10. Im Jänner 2007 erreichte er mit dem fünften Rang in Oberstdorf erstmals eine Spitzenplatzierung. In der Saison 2007/08 etablierte er sich in der Weltspitze und erreichte drei Podestplätze, bis er im Februar 2008 beim Sprint in Zakopane seinen ersten Weltcupsieg feiern konnte. Der zweite Sieg folgte im März 2008 im Gundersen-Einzel in Oslo. Den dritten Erfolg in seiner Karriere konnte er am 25. Februar 2012 ebenfalls in der Gundersen-Disziplin im tschechischen Weltcuport Liberec verbuchen. Bei den Weltmeisterschaften 2009 in Liberec wurde er mit der österreichischen Staffel Fünfter. In den beiden Gundersenwettbewerben von der Normal- und der Großschanze erreichte er jeweils den Elften Platz, während er im Massenstartrennen 22. wurde.
Seine bis jetzt größten Erfolge feierte er bei den Olympischen Winterspielen 2010 in Vancouver. Nach dem Olympiasieg im Teambewerb der Nordischen Kombinierer eroberte er zwei Tage später im Einzelbewerb über 10 km überraschend die Bronzemedaille, nachdem er nach dem Sprung von der Großschanze als Erster in die Loipe gegangen war. Bei den Weltmeisterschaften 2011 im norwegischen Oslo konnte er mit beiden österreichischen Staffeln (Normal- und Großschanze) jeweils den Weltmeistertitel erringen. Bei den Weltmeisterschaften 2013 im italienischen Fleimstal konnte er zwei Silbermedaillen im Gundersenwettbewerb von der Großschanze und im Teamsprint gewinnen. Zudem wurde er im Mannschaftswettbewerb von der Normalschanze Fünfter und belegte im Gundersenrennen von der Normalschanze den 13. Platz. Mit der österreichischen Staffel gewann er bei den Olympischen Winterspielen 2014 im russischen Sotschi die Bronzemedaille und wurde im Gundersenwettbewerb von der Großschanze Fünfter.
Bei der nordischen Skiweltmeisterschaft in Falun 2015 holte er Gold im Einzelwettbewerb. Auch hier lag er bereits nach dem Springen in Führung.[2] Mit der Mannschaft wurde er von der Normalschanze Fünfter, im Teamsprint Siebter und im Gundersenrennen von der Normalschanze Zehnter. In die Weltcup-Saison 2015/16 startete er mit zwei vierten Plätzen in Lillehammer und einem zweiten Platz in Chaux-Neuve. Er überzeugte im weiteren Saisonverlauf vor allem in der zweiten Hälfte mit großer Konstanz, sprang und lief regelmäßig in die Top-10 und konnte seinem Palmarès in Val di Fiemme einen weiteren Einzelsieg über 10 km Gundersen hinzufügen.
Nachdem der Start in die Saison 2016/17 ordentlich verlaufen war, konnte Gruber sich hin zu den Nordischen Skiweltmeisterschaften 2017 in Lahti immer weiter verbessern. Beim Nordic Combined Triple belegte er hinter den beiden deutschen Eric Frenzel und Johannes Rydzek den dritten Platz. Bei den Weltmeisterschaften in Lahti belegte er bei den Einzelwettbewerben den siebten Platz von der Normalschanze und den neunten von der Großschanze. Beim Teamwettbewerb bildete er gemeinsam mit Mario Seidl, Philipp Orter und Paul Gerstgraser die österreichische Staffel, welche hinter Deutschland und Norwegen den dritten Platz belegte. Im Team-Sprint verpasste er gemeinsam mit Wilhelm Denifl als Vierter und 0,5 Sekunden Rückstand auf den Bronze-Platz eine weitere Medaille.
Nachdem die olympische Saison 2017/18 nicht optimal begonnen hatte, qualifizierte Gruber sich trotzdem für die Olympischen Winterspiele 2018 in Pyeongchang. In den beiden Einzelwettbewerben von der Normal- und der Großschanze konnte er nur den 20. bzw. 21. Platz belegen. Beim Team-Wettbewerb bildete er gemeinsam mit Wilhelm Denifl, Lukas Klapfer und Mario Seidl die österreichische Staffel. Wie bei den Weltmeisterschaften 2017 gewannen sie erneut hinter der deutschen und der norwegischen Staffel die Bronzemedaille.[3] Beim ersten Weltcup nach den Olympischen Winterspielen konnte er mit seinem Partner Wilhelm Denifl am 3. März 2018 den Kombi-Teamsprint in Lahti gewinnen.[4]
Die Weltcup-Saison Grubers 2018/19 war von einigen Leistungsschwankungen geprägt, sodass er sich nach dem siebten Platz in Ramsau Mitte Dezember erst wieder Anfang Februar in Lahti in den Top 10 platzieren konnte. Erst aufgrund der Steigerung in Lahti wurde er für die Heim-WM in Seefeld nominiert, die Gruber selbst schon fast abgeschrieben hatte.[5] Beim Saisonhöhepunkt präsentierte sich Gruber schließlich in Topform und konnte nach dem Erreichen des zehnten Platzes von der Großschanze die Silbermedaille von der Normalschanze hinter Jarl Magnus Riiber gewinnen. Darüber hinaus holte er im Teamsprint zusammen mit Franz-Josef Rehrl sowie im Teamwettkampf gemeinsam mit Mario Seidl, Rehrl und Lukas Klapfer Bronze, womit er mit neun WM-Medaillen der erfolgreichste ÖSV-Kombinierer bei Weltmeisterschaften ist.[6] Im Gundersenwettbewerb von der Großschanze wurde er Zehnter. Am abschließenden Weltcup-Wochenende in Schonach konnte er seine WM-Leistung mit seinem siebten Weltcupsieg sogar noch übertrumpfen.
Nachdem Gruber aufgrund einer Gastroenteritis bereits verspätet in den Weltcup eingestiegen war, konnte er bei seinen Wettkampfeinsätzen nie die gewünschte Form erreichen. Als ihn im Februar 2020 eine Grippeinfektion heimsuchte, beschloss Gruber aus gesundheitlichen Gründen die Saison 2019/20 vorzeitig zu beenden: „Man kann es eigentlich nicht schlimmer erwischen, so viel Pech, wie ich dieses Jahr mit Krankheit und Infekten hatte.“[7] In der Gesamtwertung belegte er Rang 42. Mitte März 2020 unterzog sich Gruber nach anhaltenden Beschwerden im Brustkorb eine Herzkatheteruntersuchung, in deren Rahmen ihm ein Stent erfolgreich eingesetzt wurde.[8] Anfang November 2020 erhielt Gruber seitens der behandelnden Ärzte und dem ÖSV-Ärzteteam die Erlaubnis, wieder in den Hochleistungssport einzusteigen. „Ich habe schon ein bisschen spekuliert, dass ich nicht mehr grünes Licht bekomme, da Spitzensport nach einer Stent-Implantation ein sehr heikles Thema ist. Die Ärzte waren sich jedoch einig, dass ich wieder zu hundert Prozent fit bin, und das ist mein bisher größter Sieg. Es freut mich riesig, dass ich meiner großen Passion Nordische Kombination weiter nachgehen darf“, so Gruber.[9] Nachdem er Mitte Jänner 2021 seine ersten Großschanzensprünge erfolgreich absolviert hatte, wurde er für die 96. Lahti Ski Games wieder in den Weltcup-Kader berufen.[10] Dort belegte er gemeinsam mit Mario Seidl den sechsten Rang im Teamsprint. Tags darauf trat er aus gesundheitlichen Gründen nicht zum Einzelwettbewerb an. Es handelte sich dabei erneut um einen Teilverschluss eines Herzkranzgefäßes, sodass ihm im Rahmen einer Herzkatheter-Untersuchung in Lahti weitere zwei Stents eingesetzt werden mussten.[11] Vier Tage nach dem Eingriff wurde Gruber nach Österreich ausgeflogen, wo er zunächst weiterhin im Krankenhaus behandelt werden musste.[12] Schließlich erklärte er am 28. Februar 2021 in einem Interview seinen Rücktritt vom aktiven Leistungssport.