Родился 17 декабря 1917 года в городе Балашов Саратовской области.
В 1939 окончил Энгельское военное авиационное училище лётчиков. Служил в истребительной авиации. Член коммунистической партии с 1941 года. Участвовал в Советско-Японской войне в составе 718 ИАП в должности штурмана истребительного полка, произвел 6 боевых вылетов.
В декабре 1945 года был осуждён военным трибуналом 9-й воздушной армии за нарушение режима секретности и уволен из армии. Досрочно освобождён в октябре 1948 года.
С января 1949 технолог ЛИИ, г. Жуковский.
С января по декабрь 1951 парашютист-испытатель, с 24 декабря 1951 года — лётчик-испытатель ЛИИ. В 1953 году окончил курсы при Школе лётчиков-испытателей ЛИИ, позднее инструктор Школы лётчиков-испытателей Минавиапрома СССР.
В 1954 провёл испытания вертолета Ми-3 на режимы авторотации.
В 1957 испытывает опытные автопилоты на вертолёте Ми-4.
В этом же году проводит испытания «Турболёта», в 1958 году демонстрирует его на воздушном параде в Тушино.
В 1958 провёл эксперимент по испытанию средства спасения экипажа вертолёта, включавший отстрел лопастей несущего винта на вертолёте Ми-4 в полёте.
Проводил испытания по поискам приемлемого для пилота средней квалификации способа выполнения вынужденной посадки на сверхзвуковом истребителе.
Участвовал в подготовке первых советских космонавтов к полётам в условиях невесомости в специально оборудованных самолётах-лабораториях (Ту-104).
В 1959 году восстановлен в коммунистической партии (член КПСС).
К 1960 году командир лётного отряда, член методического Совета ГКАТ, инспектор по технике пилотирования ГКАТ.
В 1960 г. в составе делегации Минавиапрома посетил США. Проходил обучение полётам на американском вертолёте V-44 фирмы «Боинг Вертол», а также на фирме Сикорского полётам на вертолёте S-58.
16 июля 1964 года в испытательном полёте потерпел катастрофу пилотируемый Гарнаевым винтокрыл Ка-22. Он остался жив, хотя последним прыгал с парашютом. Второй пилот прыгнул, но получил удар винтом по голове и погиб в воздухе, не раскрывая парашют. А третий летчик, полковник, командир части, и бортинженер почему-то не прыгали, они упали вместе с винтокрылом.
21 августа 1964 года ему присвоено звание Героя Советского Союза за испытания новой авиационной техники.
Выезжал в Египет для передачи вертолётов Ми-4 и обучения египетских лётчиков.
Участник множества показов авиационной техники как в СССР, так и за рубежом.
Освоил 120 различных типов летательных аппаратов.
Расследование катастрофы вертолета Ми-6ПЖ вела французская сторона. Данных об официальных выводах, к которым пришла французская комиссия, в русскоязычных источниках обнаружить не удалось.
Однако до настоящего времени существует несколько версий причин катастрофы:
1. Вертолёт задел скалу (по другим данным линию электропередач) хвостовым винтом, который разрушился. После чего корпус вертолета начал произвольно раскручиваться вокруг вертикальной оси. Экипажу удалось посадить вертолёт на площадку сверху плоскогорья, однако вертолёт вращаясь, сорвался с обрыва, упал вниз на горящий в ущелье лес.
2. Резкая потеря высоты из-за помпажа двигателя в результате попадания вертолёта в зону высокой температуры в момент нахождения над горящим лесом .
3. Диверсионный акт.
По-2 (У-2), Р-5, И-5, И-15Бис, УТИ-4, И-16, Як-9, Як-3, S-58, вертолет V-44, Ми-1, Ми-3, Ми-4, Ми-6, Ми-8, Ми-10, Ка-18, винтокрыл Ка-22, вертолет Як-24, Турболёт, Як-36, «Алуэтт» II, «Алуэтт» III, Ту-14, Ту-16, Ту-104, Ан-10, МиГ-15УТИ, МиГ-21Ф.
К 1960 году освоил 90 типов летательных аппаратов. Всего освоил более 120 типов летательных аппаратов.
Книге присуждена особая премия Всесоюзного конкурса им. Александра Фадеева (посмертно), 1970. Книга трижды переиздавалась: 1970, 1976, 1986 гг.