Родился 18 (30) июля 1829 г. в Богословском заводе в Верхотурском уезде Пермской губернии. Детство провел на Урале, где работал врачом его отец Петр Иванович Вагнер. С 1840 г., когда отец был утвержден профессором минералогии, геологии и сравнительной анатомии Казанского университета, жил в Казани. В 1841 г. Николай Вагнер обучался в частном пансионе М. Н. Львова, с 1842 по 1845 г. – во 2-й Казанской гимназии. В 1845 г. поступил на отделение естественных наук физико-математического факультета Императорского Казанского университета, которое окончил в 1849 г. со степенью кандидата, получив золотую медаль за конкурсное сочинение «О лучших характеристических признаках для классификации насекомых». С 1848 г. начал печататься: в журнале «Русская иллюстрация» вышли его научно-популярные статьи на зоологические темы: «Жуки атехви» и «Жуки могильщики». После окончания университета в 1849 г. занял должность старшего преподавателя естественной истории и сельского хозяйства в Нижегородском Александровском дворянском институте. В 1851 г. получил степень магистра зоологии за работу «О чернотелках (Melosomata), водящихся в России». С 1852 г. по 1858 г. – адъюнкт при физико-математическом факультете Казанского университета. В 1854 г. при Императорском Московском университете защитил докторскую диссертацию на степень доктора естественных наук на тему: «Общий взгляд на паукообразных и частное описание одной из форм (Androctonus occitans) к ним принадлежащих». С 1860 г. – профессор зоологии, с 1862 г. – ординарный профессор зоологии Казанского университета. В 1870 – 1885 гг. – профессор Императорского Санкт-Петербургского университета (продолжал читать лекции до 1894 г.). В 1891 г. основал на Соловецком острове на Белом море биологическую станцию и был ее директором до конца существования станции (1894 г.). Итогом пятилетней работы профессора Вагнера на Соловецкой биологической станции стала монументальная монография «Беспозвоночные Белого моря», вышедшая в 1885 г. и ставшая на долгие годы главным пособием по созданию холодноводных морских аквариумов. Преподавал зоологию в 1878 – 1883 гг. и 1885 – 1887 гг. на Бестужевских курсах. Скончался от прогрессивного паралича 21 марта (3 апреля) 1907 г. в Санкт-Петербурге. Похоронен на Смоленском православном кладбище.
С 15 по 28 августа 1857 г. был в научной командировке в селе Ильинском.