Huet a commencé sa carrière professionnelle dans le championnat de France Élite, la première division française, au sein du club des Brûleurs de loups de Grenoble en 1995 lors des séries éliminatoires[2]. Au cours de sa troisième saison, la saison 1996-1997, il remporte le trophée Jean-Ferrand récompensant le meilleur gardien de la saison[3] alors que son équipe finit à la troisième place du classement. Lors de la saison 1997-1998, les Brûleurs de Loups finissent à la première place de la première phase puis de la seconde phase en ne concédant que deux défaites sur 38 journées de championnat. Ils abordent donc les play-offs en tant que favoris et lors du premier tour, Huet se blesse et est obligé de rater des matchs contre les Dogues de Bordeaux. Trois d'entre eux iront jusqu'aux prolongations. Finalement, les Brûleurs de Loups et Huet remportent la Coupe Magnus en tant que champion des séries en battant Amiens en finale. Huet gagne au passage son second trophée Jean-Ferrand et le trophée Albert-Hassler remis au meilleur joueur français[4],[5].
Ses prestations lui permettent d'être remarqué par le Hockey Club Lugano de la Ligue nationale Asuisse. Dès sa première saison, il remporte le titre avec son club et a une fiche de près de 95 % d'arrêts[6]. Lors de la seconde et malgré l'apport du vétéran Philippe Bozon, l'équipe échoue en finale contre l'équipe des ZSC Lions. L'année suivante, Huet réalise une excellente saison jusqu'au cinquième match de la finale des séries, encore une fois contre Zurich. Lugano menait la série 3 matchs à 1 mais lors du match du 3 avril au soir, toute l'équipe passe à côté du match et Huet prend 6 buts pour une défaite 6-3[7]. Zurich se sent alors renaître et va s'imposer le match suivant puis lors du dernier match en prolongation[8].
Ses performances traversant l'Atlantique et il est choisi au 7e tour, en 214e position au total lors du repêchage d'entrée dans la Ligue nationale de hockey par les Kings de Los Angeles[9] mais il décide de jouer encore une saison dans la Ligue nationale A avec Lugano. L'équipe finit la saison à la seconde place du classement mais perd en demi-finale contre Zurich en sept matchs[10].
Les Kings de Los Angeles
Choisi par les Kings lors du repêchage, il est aligné au sein de l'équipe de la Ligue américaine de hockey affiliée à la franchise de la LNH : les Monarchs de Manchester. Il commence la saison dans la LAH mais le 3 février 2003, il rejoint l'effectif des Kings pour la fin de la saison[11] Le 20 février 2003, il joue son tout premier match avec les Kings, devenant ainsi le second joueur de hockey français de l'histoire à avoir évolué en LNH. Le premier étant son ancien coéquipier à deux reprises : Philippe Bozon[12].
Lors de la saison 2003-2004, il supplée efficacement le gardien titulaire blessé des Kings, Roman Čechmánek et joue une quarantaine de matchs pour une dizaine de victoire. Les Kings finissent la saison avec 81 points mais ratent de peu l'accès aux séries éliminatoires.
Cependant, en raison d'un lock-out déclenché en 2004-2005, Huet joue la saison en Allemagne au sein de la Deutsche Eishockey-Liga avec la formation de Mannheim. Il aide son club à parvenir en finale du championnat allemand malgré une blessure au genou et une défense assez peu efficace[14].
Les Canadiens de Montréal
Opéré au cours de l'été 2005 à ce genou, il ne peut commencer la saison 2005-2006 avec sa nouvelle équipe de la LNH. Le 14 novembre, il est envoyé au club-école des Canadiens dans la Ligue américaine de hockey, les Bulldogs de Hamilton, afin de parfaire sa condition physique[15]. Entre le 16 et le 25 novembre, il joue quatre matchs avec les Bulldogs, concédant quinze buts pour une moyenne de 3,79 buts par match et un pourcentage d'efficacité de 86,2 %. Ces statistiques peu reluisantes ne l'empêchent pourtant pas d'être rappelé avec les Canadiens le 27 novembre[16].
Il joue son premier match avec l'équipe de Montréal le 17 décembre lors d'une défaite en prolongation chez le Wild du Minnesota. Trois jours plus tard, il enregistre sa première victoire avec les Canadiens, au Centre Bell, à Montréal, contre les Sénateurs d'Ottawa. Après avoir joué quatre matchs consécutifs, pour un bilan d'une victoire pour trois défaites dont une en prolongation, il retrouve sa place de gardien remplaçant, sur le banc, derrière le titulaire José Théodore.
Il enregistre sa deuxième victoire le 7 janvier contre Ottawa à nouveau, récoltant au passage la première étoile du match en effectuant 40 arrêts sur 41 lancers. À la suite des difficultés récurrentes de Théodore, Huet s'empare progressivement de la place de gardien numéro 1. Il enregistre deux blanchissages consécutifs, les 4 et 5 février avec des victoires 2-0 contre les Bruins de Boston et 5-0 contre les Flyers de Philadelphie ainsi que les 9 et 11 mars – 3-0 contre les Bruins une nouvelle fois et 1-0 contre les Rangers de New York. Son résultat de sept blanchissages représente le troisième meilleur total de la LNH cette saison-là[17]. Il a été nommé joueur défensif de la semaine pour les semaines du 26 février au 4 mars et du 27 mars au 2 avril et il remporte le trophée Roger-Crozier 2005-2006, titre décerné au gardien de but de la LNH ayant terminé la campagne avec le meilleur pourcentage d'efficacité (92,9 % dans son cas)[18].
À la fin de la saison régulière 2005-2006, Huet est devenu l'homme de confiance de son entraîneur lors des séries[19]. Ainsi, le 22 avril 2006, il joue le premier match de sa carrière en séries éliminatoires de la LNH, remportant une victoire de 6 à 1 contre les Hurricanes de la Caroline, en arrêtant 42 des 43 tirs dirigés vers lui[20]. Finalement, les Hurricanes remportent tout de même la série 4 à 2 et plus tard la Coupe Stanley.
Le 25 juin2006, Cristobal Huet appose sa signature au bas d'un contrat lui garantissant 5,75 millions de dollars américains au cours des deux prochaines années, une forte augmentation de salaire pour l'athlète de 31 ans qui avait été rémunéré 456 000 dollars en 2005-2006[21]
Au début de la saison 2006-2007, il se retrouve en concurrence avec David Aebischer pour le poste de gardien numéro 1. Un système de roulement est mis en place par l'entraîneur-chef, Guy Carbonneau : chaque gardien joue alternativement deux matchs consécutifs. Ce système est utilisé jusqu'au 11 novembre, lorsque Aebischer, après avoir accordé 4 buts en 28 lancers, est remplacé en cours de partie par Huet[22]. Deux matchs plus tard, le 16 novembre, Aebischer, de retour devant le filet, est à nouveau remplacé[23]. Après un mois et demi d'alternance entre les deux portiers, l'entraîneur de Montréal choisit Cristobal comme gardien numéro 1.
Trois semaines après, le 14 février, Huet se blesse lors d'un match contre les Devils du New Jersey : en tentant de bloquer un tir de Brian Rafalski, il fait le grand écart et retombe sur le dos en se tordant de douleur devant ses buts. Opéré d'une déchirure de la cuisse gauche, il ne revient devant les buts de Montréal que le 5 avril, remplaçant au cours de la troisième période Jaroslav Halák qui avait secondé Aebischer pendant son absence. Lors du dernier match de la saison, le 7 avril, il reprend son poste de gardien titulaire mais ne peut empêcher la défaite de son équipe qui termine dixième de son association et ne se qualifie pas pour les séries éliminatoires.
Au début de la saison 2007-2008, pour la première fois de sa carrière dans la LNH, Huet est désigné gardien numéro 1 de son équipe. Il doit cependant faire face à la concurrence d'un espoir du hockey canadien, Carey Price, en qui beaucoup d'amateurs voient l'avenir devant les buts des Canadiens de Montréal. Ce dernier est cependant renvoyé avec les Bulldogs de Hamilton en janvier et Huet remporte 8 des 11 matchs auxquels il prend part. Pendant cette période, il est nommé la 3e étoile du mois par la ligue nationale.
Le 29 février, lors de son premier match dans l'uniforme des Capitals, Huet réalise 18 arrêts et obtient un jeu blanc dans une victoire de 4-0 des siens face aux Devils du New Jersey[27]. Il a finalement enregistré 11 victoires sur 13 matchs avec une moyenne de 93,6 % d'arrêts et un 1,63 but encaissé par match (dont deux jeux blancs) lors de la fin de saison régulière 2007-2008. Au cours de ces 13 matchs, il a remporté neuf victoires consécutives, la plus longue série depuis Pete Peeters en 1987. Les Capitals ont obtenu leur billet pour les séries éliminatoires, avec en prime le titre de la division Sud-Est.
Les Blackhawks de Chicago et la Coupe Stanley
Le , Huet choisit de tester le marché des joueurs autonomes et signe un contrat de quatre ans d'une valeur estimée de 22,5 millions de dollars avec les Blackhawks de Chicago[28].
Au cours de la saison, l'entraîneur des Blackhawks, Joel Quenneville choisit de faire alterner ses gardiens. Huet et Khabibouline se succèdent régulièrement devant le filet mais le , l'entraîneur choisit d'utiliser Khabibouline pour le restant de la saison et le début des séries éliminatoires[29]. À la fin de la série finale de l'association de l'Ouest, contre les Red Wings de Détroit, Huet revient devant le filet lorsque Khabibouline se blesse. Après ce remplacement lors du troisième match, que Chicago finit par remporter en prolongation, Huet est partant pour un autre match, qui est plus décevant pour le gardien français. Lors du match décisif, Huet repousse 44 tirs mais les Blackhawks perdent par un score de 2-1 et sont éliminés.
En début de saison 2009-2010, Huet est secondé par le gardien finlandais Antti Niemi qui prend le relais pour les séries éliminatoires. Lorsque les Blackhawks battent les Flyers de Philadelphie par 4 victoires à 2 en finale des séries éliminatoires, il devient le premier Français de l'histoire de la LNH à remporter la coupe Stanley.
Le retour en Europe
Pour la saison 2010-2011, les Blackhawks signent un contrat avec Marty Turco et souhaitent se séparer de Huet qui représente un trop gros salaire. Ils parviennent à un accord avec le club suisse du Hockey Club Fribourg-Gottéron où il est officiellement transféré le [30]. Le 17 octobre de la même année, il obtient la nationalité suisse qui permet à son club de ne plus le considérer comme un joueur étranger[31]. Un an plus tard, aucun club de la LNH ne souhaite se porter acquéreur de Huet et de son salaire et il est à nouveau officiellement membre du club suisse pour la saison à venir[32].
Lausanne
Le 11 août 2012, il signe un contrat de quatre ans avec le Lausanne Hockey Club, club de Ligue nationale B[33], il déclare alors lors d'un interview « Lausanne, c'est un peu ma maison »[34]. Le 17 avril 2013, son club revient en Ligue nationale A après huit ans en Ligue nationale B.
En novembre 2015, il reçoit lors d'une cérémonie d'avant-match à Lausanne, officiellement le trophée du « palet de glace » par Slapshot Magazine, magazine de hockey français, décerné au meilleur joueur français de l'année.
En 2017, il annonce qu'il joue sa dernière saison, mais quelques mois plus tard il resigne avec Lausanne pour une saison, malgré l’arrivée de Sandro Zurkirchen. La saison 2017-2018 est sa dernière saison, il réalise ses moins bonnes performances avec Lausanne avec seulement 88,6 % d'arrêts.
Le 5 octobre 2019, son maillot numéro 39 est retiré, il ne sera plus jamais porté au Lausanne Hockey Club.
À l'issue de sa carrière de joueur, il reste au sein du HC Lausanne en étant nommé entraîneur des gardiens[35].
Carrière internationale
Il est sélectionné pour la première fois au sein de l'équipe de France alors qu'il n'a que 17 ans. Il participe ainsi au championnat d'Europe junior en 1992 et 1993. Lors de l'édition 1993, il est sacré meilleur gardien du groupe B du tournoi[2].
En 1995, il participe au championnat du monde junior, l'équipe finit à la quatrième place et il est nommé dans l'équipe type du tournoi. Deux saisons plus tard, il fait ses débuts dans le championnat du monde senior alors que la France évolue dans la division I du tournoi. Il participe ensuite à plusieurs compétitions internationales dont le championnat du monde 2014 où la France termine à la 8e place.
Le 15 mai 2017, il met un terme à sa carrière internationale après le dernier match de l'équipe de France au Championnat du monde 2017[36].