В армии – с 1939 года. Окончил Борисоглебскую военную авиационную школу лётчиков. В январе 1942 года – младший лётчик 630-го истребительного авиационного полка на Северо-Западном фронте. С февраля 1942 по май 1945 года – командир звена, заместитель командира и командир авиаэскадрильи 253-го истребительного авиационного полка. Воевал в составе Калининского и 2-го Прибалтийского фронтов, Западного фронта ПВО. За время войны совершил 260 боевых вылетов, сбил 22 самолёта врага.
Указом Президиума Верховного Совета СССР от 29 марта 1944 года за мужество и героизм, проявленные в боях с немецко-фашистскими захватчиками, гвардии старшему лейтенанту Афанасьеву было присвоено звание Героя Советского Союза.
После войны продолжал службу в строевых частях ВВС. С 1946 года капитан Афанасьев в запасе. Жил в Москве.