Г.М. Яхнов родился 30 августа 1918 года в деревне Фофаново Ивановской области в семье крестьянина. Окончив школу-семилетку, он поступил в Ивановский химико-технологический техникум. В 1936 году, на втором курсе техникума, записался в аэроклуб и уже через год подал заявление с просьбой направить его в школу военных летчиков.
В 1937 году был призван в Красную Армию и направлен в Пермскую военную авиационную школу, которую окончил в 1939 году. Младший лейтенант Яхнов получил назначение в 15-й истребительный авиационный полк, базировавшийся близ города Полоцка (Белоруссия). В 1941 году окончил курсы командиров звеньев. С первых дней Великой Отечественной войны участвовал в боях с немецко-фашистскими захватчиками. Первый боевой вылет совершил 22 июня в районе Бреста. Осенью 1941 года лейтенант Яхнов назначен заместителем командира эскадрильи. В мае 1944 года – заместителем командира 33-го истребительного авиационного полка. От боя к бою росло мастерство летчика-истребителя Яхнова.
Указом Президиума Верховного Совета СССР от 22 августа 1944 года за образцовое выполнение заданий командования и проявленные мужество и героизм в боях с немецко-фашистскими захватчиками майору Геннадию Михайловичу Яхнову присвоено звание Героя Советского Союза с вручением ордена Ленина и медали «Золотая Звезда».
День Победы встретил в Латвии. Всего за годы войны Яхнов совершил 574 боевых вылета, провел 69 воздушных боев, сбил в воздухе 16 самолетов противника, 10 самолетов сжег на земле, совершил более 30 разведывательных полетов, более 30 вылетов на сопровождение бомбардировщиков и штурмовиков.
После Победы продолжил службу в военной авиации. Был начальником воздушно-стрелковой подготовки 106-й авиационной дивизии, базировавшейся в Прибалтике. В 1947 году принял командование 907-м истребительным полком в Баку. С 1952 года полковник Яхнов был военным советником в Болгарии, организовывал две истребительные дивизии, оснащенные реактивными самолетами Як-23. В 1956 году окончил высшие курсы командиров дивизий при Военно-воздушной академии и был назначен заместителем командира дивизии в Смоленск. Освоил истребитель МиГ-19, сдал норматив летчика 1-го класса. В 1958 году полковник Яхнов ушел в отставку.
В 1978 году Г.М. Яхнов переехал в город Рязань. До выхода на пенсию работал в горжилуправлении. Многие годы Геннадий Михайлович Яхнов занимался общественной деятельностью, большое внимание уделял военно-патриотическому воспитанию молодежи. 12 лет он возглавлял городской Совет ветеранов.
Его ратные и трудовые заслуги отмечены орденом Ленина, 3 орденами Красного Знамени, орденами Отечественной войны 1-й степени, Красной Звезды, «За заслуги перед Отечеством» 3-й степени, медалями. Решением Рязанского городского Совета за многолетний добросовестный труд, большой личный вклад в военно-патриотическое воспитание молодежи Геннадию Михайловичу Яхнову присвоено звание «Почетный гражданин города Рязани».
Человек активной жизненной позиции, настоящий патриот своей Родины, Геннадий Михайлович Яхнов навсегда останется в памяти рязанцев.