Né à Paris d’une mère mannequin et d’un père comédien et metteur en scène, Niels Schneider débarque au Québec en 1996. Il débute neuf ans plus tard dans le métier, commençant par faire des doublages de voix, puis travaille son jeu d’acteur en parallèle en suivant des cours d’interprétation théâtrale et d’art dramatique jusqu’en 2009.
Il décroche son premier rôle dans Tout est parfait (2008), du réalisateur québécois Yves Christian Fournier. Le comédien y joue Sacha, un adolescent qui met fin à ses jours, et rejoint par trois de ses amis peu de temps après.
Niels devient le chouchou d’un autre réalisateur québécois, le jeune Xavier Dolan, qui l’engage dans ses deux premiers longs-métrages : J’ai tué ma mère (2009) et Les Amours Imaginaires (2010). Dans le second, il crève l'écran dans la peau du beau Nicolas, objet de tous les fantasmes.
L’année suivante, il pose ses valises à Paris et obtient un rôle dans L’Age atomique, premier long-métrage de la Française Héléna Klotz. Le cinéma français lui tourne alors autour, et notamment le réalisateur, scénariste et producteur Etienne Faure, qui lui confie un rôle dans le thriller psychologique Désordres (2012).
Porte-étendard d’un cinéma de l’intime, Niels Schneider ballade ses boucles d’or dans des productions indépendantes, comme la comédie érotique de Yann Gonzalez, Les rencontres d’après minuit, où il joue Matthias, un jeune homme à l’allure d’Albator, un personnage plus sombre et moins angélique que ses rôles précédents. Il poursuit sa route dans le cinéma expérimental en jouant l’écrivain français Maurice Sachs dans l’ovni stylisé Opium d’Arielle Dombasle.
En 2014, l’acteur franco-canadien intègre le casting d’un long-métrage plus populaire que les productions dans lesquelles il avait l’habitude de jouer. Il campe Hugo dans Une rencontre, romance légère signée Lisa Azuelos, aux côtés de Sophie Marceau et François Cluzet.
Après être apparu dans L'Antiquaire et Gemma Bovery, Niels Schneider trouve un premier rôle dans l'original thriller Diamant noir centré sur l'univers des diamantaires en Belgique. Si le film ne réalise pas beaucoup d'entrées, il permet à l'acteur de remporter le César du Meilleur espoir masculin en 2017. Fort de cette réussite, il enchaîne avec l'adaptation de la BD Polina et Belle dormant, relecture contemporaine du célèbre conte où il campe le prince.
Variant les projets, Niels Schneider est à l'affiche du biopic Dalida et des drames d'époque Un peuple et son roi, Un amour impossible et Le Cahier noir. En 2019, il joue dans plusieurs projets assez ambitieux, comme Sibyl en petit ami de Virginie Efira ou Sympathie pour le diable dans le rôle du reporter de guerre Paul Marchand. De plus en plus présent dans le paysage cinématographique français, le comédien entame 2020 avec Revenir, un drame rural dans lequel il donne la réplique à Adèle Exarchopoulos.
Toujours en 2020, Niels Schneider tourne le prochain film d’Emmanuel Mouret, Les choses qu’on dit, Les choses qu’on fait et celui de Benoit Jacquot, Suzanna Andler aux côtés de Charlotte Gainsbourg. Par ailleurs, depuis une dizaine d’année Niels se produit régulièrement au théâtre dans des registres très différents. C’est dans le rôle de Roméo dans la pièce Roméo et Juliette et dirigé par Nicolas Briançon que le public français le découvre. Il a été le partenaire d’Isabelle Adjani dans Kinship au Théâtre de Paris. Puis dans Retour à Berratham d’Angelin Prejlocaj joué dans la cour d’honneur du Palais des Papes à Avignon puis au théâtre national de Chaillot à Paris et en tournée internationale.