A Hajdú-Bihar megyei Pocsajon látta meg a napvilágot. Tanulmányait 1961 és 1965 között a Bartók Béla Zeneművészeti Szakközépiskolában végezte, mások mellett Kerényi Miklós György növendékeként. Énekesi pályafutását 1963-ban a Honvéd Művészegyüttes férfikarában kezdte, ahol hamar kitűnt "olaszos" hangjával. Egy külföldi meghívás miatt 1967-ben átszerződött az Állami Népi Együtteshez szólistának, majd néhány év elteltével próbaéneklésre jelentkezett a Magyar Állami Operaházba. A meghallgatás után szerződést ajánlottak neki, jóllehet nem végezte el a Zeneakadémiát. Az ország első dalszínházában Don José szerepében mutatkozott be Bizet Carmen című operájában, 1971-ben az Operaház magánénekese lett. Tehetségére külföldön is felfigyeltek, különösen az után, hogy sikerrel szerepelt a világhírű olasz énekes, Tito Gobbi firenzei nyári akadémiájának mesterkurzusán.
B. Nagy János három és fél évtized alatt szenvedélyes, mély érzelmeket kifejező operahősök hosszú sorát játszotta el a magyarországi és európai operaházakban. Magyarországon oroszlánrészt vállalt az Operaház eredeti nyelvű előadási hagyományának megteremtésében. Amikor az 1960-as években Budapesten dolgozott Giuseppe Patané és Lamberto Gardelli olasz karmester, számos Verdi- és Puccini-opera tenor főszerepét bízták rá. 1979-ben Genovában vendégszerepelt Beethoven egyetlen operája, a Fidelio ősváltozatának előadásán Florestan szerepében. A nyolcvanas években rendszeresen színpadra lépett németországi és svájci dalszínházakban, szerződtette a düsseldorfi Rajnai Német Opera, évekig dolgozott Bernben, énekelt a kölni, a bécsi, a hamburgi és a zürichi opera színpadán. Oratóriuménekesként is nemzetközi hírnévre tett szert. Több magyar zeneszerző darabjainak ősbemutatóján szerepelt, egyebek közt Szokolay Sándor Sámson című operájában Jeftét énekelte.
A kiváló énekes hangját számos hangfelvétel őrzi, a Hungaroton két teljes Verdi-operát - Simon Boccanegra, Attila - vett fel vele, s önálló árialemeze is megjelent. Legemlékezetesebb alakításait Verdi és Puccini operáiban nyújtotta, de sokan emlékeznek rá Giordano (André Chénier) és Bellini (Norma) operájából is. Főbb Verdi-szerepei között volt Oronte (A lombardok), Macduff (Macbeth), Ernani, Don Carlos. Az Aidában Hírnökként és Radamesként is fellépett, az Otellóban Cassiót és a címszerepet is énekelte, 1986-ban a Rigoletto televíziós változatában a mantuai herceget formálta meg. Első Puccini-főszerepét, Des Grieux-t a Manon Lescaut című operában 1975-ben énekelte, ezt a Tosca Cavaradossija és a Turandot Kalafja követette.
Gond nélkül tudta megszólaltatni a legnehezebb áriákat, de a könnyedebb műfajba is kirándult, szívesen énekelt operettet is. Kovács János karmester egyszer azt mondta róla: ő a tenor "Stradivarija", két hangszalagja hibátlanul működött. Művészete elismeréseként 1980-ban Liszt Ferenc-díjat, 1985-ben Székely Mihály-emlékplakettet, valamint érdemes művész címet kapott. 2002-ben az Operaház örökös tagja, 2007-ben mesterművésze lett. Nemcsak a közönségnek, hanem az Operaház társulatának is kedvence volt, a magánénekesek által alapított Optimus-díjat elsőként neki ítélték oda 2006-ban. 2007-ben az operairodalom tenor szerepeinek kiváló megformálásáért, művészi pályafutása elismeréseként Kossuth-díjjal tüntették ki.
B. Nagy János 2007. december 22-én hunyt el Budapesten hosszan tartó betegséget követően.