Родился в 1919 году в деревне Сажино ныне Тюкалинского района Омской губернии в семье крестьянина. Русский.
Окончил семь классов сельской школы. В 1933 году поступил в Тюкалинский сельскохозяйственный техникум. Работал в колхозе зоотехником, десятником в леспромхозе.
В 1938 – 1939 годах жил и работал в Новосибирске.
В 1939 году Октябрьским РВК призван в ряды Красной Армии. Служил в учебном батальоне танковой бригады на Дальнем Востоке.
Член ВКП(б)/КПСС с 1940 года.
Участник Великой Отечественной войны с июля 1941 года. Начал войну командиром танка на Калининском фронте. Воевал на Воронежском, Украинском, 1-м Белорусском фронтах. Три раза был ранен.
Командир танкового батальона 40-й гвардейской танковой бригады (11-й гвардейский танковый корпус, 1-я танковая армия, 1-й Украинский фронт) гвардии старший лейтенант 3ахаров отличился в боях на винницком направлении.
9 января 1944 года танковый батальон с десантом автоматчиков на броне, будучи передовым отрядом бригады, участвовал в освобождении села Комаров (Винницкий район Винницкой области). Встреченный огнем вражеской артиллерии и минометов, батальон развернулся для атаки. Автоматчики спешились и наступали рядом с танками. Первым ворвался в Комаров танк командира отряда И.К. Захарова, уничтожив при этом десятки фашистов. Тем временем подошли главные силы 40-й гвардейской танковой и 27-й гвардейской мотострелковой бригад. В завязавшемся ожесточенном бою они окружили и разгромили оборонявшийся в Комарове 229-й пехотный полк 101-й легкопехотной дивизии противника.
В ночь на 10 января 1944 года его 17 танков с мотострелковым батальоном неожиданным ударом овладели в тылу противника поселком городского типа Гнивань (ныне город Винницкой области), уничтожив находившийся здесь гарнизон врага численностью до батальона пехоты. Тем самым была перерезана дорога Жмеринка – Винница. В Гнивани отряд И.К. Захарова также захватил крупные склады боеприпасов, горючего и различного военного имущества. Далее передовой отряд под командованием гвардии старшего лейтенанта Захарова выдвинулся в район села Могилевка (Жмеринский район Винницкой области). Сбив вражеские заслоны, он захватил переправу через реку Южный Буг и организовал ее оборону.
При захвате и обороне переправы отряд отразил многочисленные контратаки противника и уничтожил до 500 солдат и офицеров противника, 2 орудия, 11 минометов, 12 автомашин, 17 мотоциклов, захватил 8 пленных, обоз из 30 повозок и 4 склада боеприпасов, продовольствия и снаряжения.
Указом Президиума Верховного Совета СССР от 24 апреля 1944 года за мужество, отвагу и героизм, проявленные в борьбе с немецко-фашистскими захватчиками, гвардии старшему лейтенанту Захарову Ивану Константиновичу присвоено звание Героя Советского Союза.
Закончил войну в Берлине заместителем командира танкового полка в звании гвардии капитана.
Награжден орденами Ленина, Красного Знамени, Отечественной войны 2-й степени, Красной Звезды, медалями.
В 1946 году окончил Военно-политическое училище и Высшую бронетанковую школу.
Погиб в бою с бандеровцами 11 ноября 1947 года. Похоронен в Кишиневе (Молдова) [178, 191, 240, 481, 553, 672, 1009].