Сергей Иванович Ваганов родился в крестьянской семье в деревне Чаглава Нижегородского уезда Нижегородской губернии (в настоящее время в Кстовском районе Нижегородской области).
В 1935 году окончил фабрично-заводское училище, работал слесарем на Горьковском заводе имени В. И. Ленина (в настоящее время НИТЕЛ).
В 1938 году Ворошиловским райвоенкоматом города Горького был призван в ряды Красной армии, в 1940 году демобилизован. Вновь был призван в 26 мая 1942 года. Воевал на 1-м Прибалтийском фронте. 26 июля 1943 года был тяжело ранен. После излечения стал служить в 920 отдельном сапёрном батальоне.
В период с 19 по 31 мая 1944 года в районе села Осташевцы (Тернопольская область), минируя передний край обороны 140 стрелковой дивизии, рядовой Ваганов под пулемётным огнём противника в 100—150 метрах от его переднего края установил 172 противотанковых мины ТМБ-2 и 285 противопехотных мин. Приказом по 28 корпусу от 27 июля 1944 года награждён медалью «За отвагу» .Младший сержант Ваганов со своим отделением при наведении моста через реку Висла в районе Кракова под артиллерийским огнём заготовил за сутки (25-26 января 1945 года) 100 метров прогонов, 80 метров настила, и изготовил 7 рамных опор, чем обеспечил продвижение 28 корпуса. Приказом по 60-й армии от 17 февраля 1945 года он был награждён орденом Славы 2 степени.
В период с 8 по 12 апреля 1945 года севернее города Троппау (в настоящее время Опава) сержант Ваганов со своим отделением установил 1600 противотанковых и противопехотных мин натяжного действия. Лично Ваганов установил около 100 мин. Указом Президиума Верховного Совета СССР от 15 мая 1946 года он был награждён орденом Славы 1-й степени.
В 1946 году он был демобилизован. Вернулся в Горький, работал на заводе токарем-шлифовальщиком, затем наладчиком шлифовальных станков.Скончался Сергей Иванович Ваганов 28 октября 1984 года.6 апреля 1985 года он был награждён орденом Отечественной войны 2-й степени.