Originaire du Nord, Jacques Bonnaffé fait ses armes au Conservatoire de Lille avant de monter sur les planches, notamment dans Britannicus de Racine. Au cinéma, il est révélé en 1984 dans Prénom Carmen de Jean-Luc Godard où une scène le dévoile se masturbant sous la douche.
Depuis son premier film, Anthracite d'Edouard Niermans, Jacques Bonnaffé est resté cohérent dans ses choix en privilégiant le cinéma d'auteur réputé exigeant. Ainsi, l'acteur a notamment travaillé avec Philippe Garrel (Elle a passe tant d'heures sous les sunlights...), Jean-Charles Tacchella (Escalier C), Jacques Doillon (La Tentation d'Isabelle) et Alain Corneau (Le Deuxième souffle). Parallèlement, il poursuit une riche carrière au théâtre et se consacre à des lectures publiques de poèmes, notamment ceux d'Arthur Rimbaud.
Ex-compagnon de Nathalie Baye dans Vénus beauté (institut) en 1999 ou militant d'Act-up dans Jeanne et le garcon formidable en 1998, il participe à Va savoir de Jacques Rivette en 2001. Il fait également une apparition dans La Repentie qui marque le retour d'Isabelle Adjani au cinéma. En 2004, il allie sa passion pour le théâtre et le cinéma à travers la libre adaptation de la pièce de Feydeau Un fil à la patte où il côtoie Emmanuelle Béart, Charles Berling et Dominique Blanc. La même année, il participe au premier film en tant que réalisatrice de Yolande Moreau, Quand la mer monte, récompensé par deux Césars. En 2005, il fait une incursion dans l'univers angoissant de Dominik Moll avec Lemming.
Après les drames La Tourneuse de pages (2006) et Les Amitiés maléfiques (id.), il joue l'un des prétendants d'Elsa Zylberstein dans La Fabrique des sentiments. En 2007, il est l'un des membres de l'équipage du Capitaine Achab, librement inspiré par le roman d'Herman Melville, Moby Dick. Après avoir retrouvé Rivette pour son 36 vues du Pic Saint-Loup en 2009, il décroche un Molière pour la pièce L'Oral et Hardi, la même année. Deux ans plus tard, il apparaît dans Derrière les murs (2011), un film fantastique et d'épouvante français en 3D, porté Laetitia Casta.