Né à Sioux City dans l'Iowa, John Osborn débute ses études au Simpson College à Indianola avec Anne Larson. En 1994, il est invité par le Metropolitan Opera Young Artist Development Program à New York, où il étudie avec Edward Zambara. Il participe également à des master classes avec des noms célèbres tels Hermann Prey, Régine Crespin, Carlo Bergonzi, Eduardo Müller, Barbara Bonnie, Sherill Milnes, Ileana Cortrubas et Regina Resnik. En 1996, il remporte le Concours Operalia de Plácido Domingo à Bordeaux.
Sa carrière internationale débute en 1997, alors qu'il est encore membre du Young Artist Development Program du Metropolitan Opera. Recommandé pour chanter Fenton dans Falstaff de Verdi, il apprend le rôle en deux jours seulement, prend un avion pour Boston et chante devant le chef James Conlon, qui le choisit immédiatement.
Tout au long de sa carrière, il interprète une large variété de rôles, notamment dans des œuvres de Rossini, comme Arnoldo dans Guillaume Tell, Otello, le Prince Ramiro dans La Cenerentola, Goffredo dans Armida. Ce dernier rôle l’a vu aux côtés de Renée Fleming et Lawrence Brownlee au Metropolitan Opera de New York (2009/2010).
En 2007/2008, il se produit dans La Cenerentola à Zurich avec la mezzo-soprano Cecilia Bartoli à l’occasion des célébrations pour l’anniversaire d’Alexander Pereira, le directeur artistique de l'Opernhaus Zürich. Peu après, il fait ses débuts avec l’orchestre de l’Accademia di Santa Cecilia à Rome dans le rôle d'Arnold (Guillaume Tell) sous la direction d’Antonio Pappano, avec Michele Petrusi dans le rôle-titre et Norah Amsellem dans le rôle de Mathilde. Le succès de ces performances lui a permis d’obtenir de nouveaux rôles comme Roméo ou Raoul dans Les Huguenots.
Osborn a également joué dans Le Barbier de Séville, dans La Juive et dans Clari de Jacques Fromenthal Halévy. Ce dernier opéra faisait partie d’un projet initié par Cecilia Bartoli, de redécouverte de la cantatrice Maria Malibran, pour qui Halévy avait conçu Clari.
Récemment, Osborn a fait ses débuts à la Scala de Milan pour la première fois dans le rôle de Rodrigo (La Donna del lago). Il y a joué aux côtés de Joyce DiDonato, Juan Diego Flórez, Daniela Barcellona et Simon Orfila, sous la direction de Roberto Abbado. Toujours à la Scala, en 2011/2012 il a interprété Don Ottavio dans Don Giovanni, puis Otello dans l'opéra éponyme de Rossini à l'Opernhaus Zürich Opernhaus aux côtés de Cecilia Bartoli (diffusé sur medici.tv) ; Le Barbier de Séville au San Diego Opera...