Ваня Кузнецов родился в 1928 году в станице Мигулинской Ростовской области, а позже семья перебралась на хутор Божковка Каменского района. Иван успел окончить семь классов сельской школы, когда началась война.
В 1943 году мальчик вместе с женщинами и другими детьми и стариками под дулом фашистского автомата рыл окопы для немецких войск. Когда Красная армия освободила Каменский район, крестьяне разошлись по домам, а Иван остался, став сыном 185-го артиллерийского полка 82-й гвардейской стрелковой дивизии.
Сначала мальчик был назначен подносчиком боеприпасов артиллерийского орудия, затем — заряжающим, а уже в июле 1943 года стал наводчиком. Именно тогда проявился его удивительный природный талант артиллериста.

3 сентября 1943 года расчёт Ивана точным попаданием уничтожил укреплённую огневую точку. Однако сразу после этого на него стал двигаться тяжёлый немецкий танк «Тигр». Мальчик спокойно развернул орудие, дождался, когда он подойдет ближе, и подбил его. Через несколько дней юный артиллерист уничтожил миномётную батарею, наблюдательный пункт и артиллерийское орудие. За это его удостоили медали «За отвагу». И это при том, что ему не исполнилось и 15 лет.
Через полгода, в ходе Никольско-Криворожской наступательной операции, Ваня шестью выстрелами заставил замолчать шесть немецких дзотов. В наградных документах говорится, что расчёт артиллериста сумел уничтожить около 100 гитлеровцев, танк в одиночку и отбить три контратаки противника. За это Кузнецову был присвоен орден Красной Звезды.
15 января 1945 года при прорыве немецкой обороны Иван был ранен осколком вражеского снаряда, но из строя не вышел, а продолжил вести огонь, прямой наводкой уничтожив два пулемёта и разрушив два дзота. А 28 марта при штурме крепости Альтинштадт огнём из своего орудия поджёг два дома, в которых находились три станковых пулемёта, и в этот же день уничтожил ещё два пулемёта.
К ордену Славы I степени Кузнецов был представлен в возрасте 16 лет, в апреле 1945 года, а награждён им в мае 1946 года, когда ему было 17 лет.