Иван Васильевич Панфилов родился 20 декабря 1892 года в Петровске Саратовской губернии в семье мелкого конторского служащего. Русский по национальности.
Отец — отставной военный писарь из мещан г. Петровска Саратовской губернии Василий Захарович Панфилов, мать — Александра Степановна.
Из-за ранней смерти матери, после окончания третьего класса вынужден был оставить учёбу в четырёхклассном городском училище Петровска, с 1905 года работал в бакалейной лавке по найму.
В октябре 1915 года И. В. Панфилов был призван в Русскую императорскую армию. Военная служба началась в учебной команде 168-го запасного батальона. С марта 1917 года в составе 638-го пехотного Ольтинского полка 160-й пехотной дивизии 16-го армейского корпуса 9-й армии воевал на Юго-Западном фронте Первой мировой войны в звании фельдфебеля. В 1917 году был избран членом полкового комитета. Демобилизовался в 1918 году.
В октябре 1918 года добровольно вступил в Красную армию. Первой должностью красного командира стала командир взвода в 1-ом Саратовском пехотном полку 25-й стрелковой дивизии. В составе полка участвовал в подавлении восстания Чехословацкого корпуса. С марта 1919 года служил 20-й Пензенской стрелковой дивизии. Принимал участие в Уфимской операции. С августа воевал под Царицыном. В марте 1920 года Панфилов заболел тифом. После болезни, с апреля участвовал в советско-польской войне, где воевал в должности командира взвода в 100-ом стрелковом полку. В 1920 году Панфилов вступил в РКП. За героизм в советско-польской войне в 1921 году был награждён орденом Красного знамени.
С сентября 1920 года Панфилов боролся с бандитизмом на Украине сначала в должности командира взвода, а затем роты 100-го стрелкового полка. В марте 1921 года он был назначен командиром взвода 183-го отдельного пограничного батальона. В декабре перспективного командира направляют в Киевскую объединённую пехотную школу, где в течение двух лет проходил обучение. По окончании военной школы Панфилов назначен в 52-й Ярославский стрелковый полк на должность командира взвода, позже занимал должности помощника командира и командира роты. В апреле 1924 года его перевели в 1-й Туркестанский стрелковый полк; с этого времени судьба Ивана Васильевича тесно связана с Туркестаном. В полку Панфилов служит командиром роты, помощником командира батальона, а затем начальником полковой школы. С мая 1925 по август 1926 года Панфилов служит командиром роты и начальником пограничного поста Хорог в составе Памирского отряда. С августа по октябрь Иван Васильевич исполнял должность командира Памирского отряда. С августа 1927 года служит начальником полковой школы 4-го Туркестанского стрелкового полка. В апреле 1928 года переведён на должность командира батальона 6-го Туркестанского стрелкового полка. В марте — июне 1929 года принимал участие в боях с басмачами. За боевые отличия в этих боях Панфилов был награждён орденом Красного Знамени. В марте 1931 года получил назначение на должность командира и комиссара 8-го отдельного стрелкового батальона местных войск.
В декабре 1932 года Панфилов возглавил 9-й отдельный Туркестанский Краснознаменный горнострелковый полк, выделен из состава 3-й Туркестанской горнострелковой дивизии. В 1936 году жена Панфилова, Мария Ивановна, участвовала во Всесоюзном совещании жён командиров РКК. В июле 1937 года Панфилов был переведён в штаб Среднеазиатского военного округа на должность начальника квартирно-эксплуатационного отдела. В 1938 году Панфилов был награждён медалью «XX лет Рабоче-Крестьянской Красной Армии». В октябре 1938 года Иван Васильевич получил назначение в город Фрунзе на должность военного комиссара Киргизской ССР. В это время жена Панфилова возглавила Свердловский райсовет города Фрунзе. За свою деятельность она была награждена орденом «Знак Почета».
С 14 июля 1941 года Иван Васильевич приступил к формированию 316-й стрелковой дивизии. В эту дивизию набирались жители Алма-Аты и Фрунзе.
10 октября 316-я дивизия вступила в бой с противником и смогла нанести ему значительный урон. За бои в период с 10 октября по 5 ноября генерал-майор Панфилов был награждён орденом Красного Знамени.
16 ноября 2-й танковая дивизия вермахта атаковала позиции 316-й сд, в том числе в районе Дубосеково. Части дивизии во главе с Панфиловым вели тяжёлые оборонительные бои с превосходящими силами противника, в которых личный состав проявил массовый героизм. Один из эпизодов послужил основой для легенды про «28 героев-панфиловцев». В ходе боев 16-20 ноября на Волоколамском направлении оборона 316-й стрелковой дивизии, с 17 ноября Краснознамённая, с 18 ноября Гвардейская, была прорвана и она вынуждена была отступать, остановившись лишь в районе Крюково.
Погиб 18 ноября 1941 года у Гусенево, Московская область от осколков немецкой миномётной мины. 8-я гвардейская дивизия 23 ноября получила почётное звание Панфиловской.