Родился 28 октября 1940 года в городе Мытищи Московской области в семье рабочего. Русский. Член КПСС с 1972 года.
В 1957 году окончил 10 классов средней школы в городе Калининград (ныне Королёв) и поступил на работу в завод № 88 (ныне РКК Энергия) учеником медника. Через три месяца ему был присвоен 4-й разряд. Принимал участие в работах по изготовлению Первого искусственного спутника Земли. В 1960 году поступил в Московское высшее техническое училище имени Н. Э. Баумана, ещё студентом в 1964 году начал работу в конструкторском бюро Сергея Королёва ОКБ-1. С 1965 года по окончании МВТУ имени Н. Э. Баумана продолжал работу на различных должностях в ОКБ-1 (впоследствии переименованном в Центральное конструкторское бюро экспериментального машиностроения (ЦКБЭМ)). Принимал участие в подготовке технической документации для советской лунной пилотируемой программы: ракеты-носителя Н-1, лунно-посадочного корабля-модуля Т2К-ЛК, лунно-орбитального корабля-модуля 7К-ЛОК. Он также принимал участие в испытаниях перечисленных конструкций. Он принимал участие в разработке кораблей типа «Союз»: военного назначения — Союз 7К-ВИ (ВИ — военно-исследовательский), а также серии 7К-ОК (ОК — орбитальный корабль). В 1985 году защитил диссертацию кандидата технических наук в Центральном научно-исследовательском институте машиностроения (ЦНИИмаш).
С 27 марта 1973 года Г. М. Стрекалов в отряде космонавтов, войдя в состав группы инженеров КБ «Энергия» (одновременно с ним были также зачислены Владимир Аксёнов, Александр Иванченков и Валерий Рюмин). В том же году он освоил пилотирование самолёта Л-29 и совершил 7 прыжков с парашютом.
В 1974—1976 гг. — в качестве борт-инженера вместе с Юрием Малышевым проходил подготовку к испытательному полёту на космическом корабле типа Союз 7К-С. В сентябре 1976 оба были дублёрами основного экипажа корабля Союз-22.
В 1978—1979 гг. проходил подготовку к первому пилотируемому полёту корабля типа Союз Т Вместе с Василием Лазаревым входил в состав третьего запасного экипажа. В конце 1979 года они оба были зачислены в первый экипаж корабля Союз Т-3, в экипаж также был включен врач Валерий Поляков. Программа полёта включала медицинские исследования.
В мае 1980 года произошла авария бортовых систем орбитальной станции Салют-6, в связи с чем возникла необходимость в отправки туда ремонтного экипажа и экипаж Стрекалова стал дублирующим. Однако в октябре Стрекалова перевели в основной экипаж, в котором он заменил Константина Феоктистова.
Первый космический полёт совершил с 27 ноября по 10 декабря 1980 года совместно с Л. Д. Кизимом и О. Г. Макаровым в качестве космонавта-исследователя на космическом корабле «Союз Т-3». В полёте проводились испытания бортовых систем и элементов конструкции усовершенствованного транспортного корабля «Союз Т-3» в различных режимах автономного полёта и в составе орбитального комплекса «Салют-6» — «Прогресс-11».
Второй космический полёт совершил с 20 по 22 апреля 1983 года в качестве бортинженера космического корабля «Союз Т-8» совместно с командиром корабля В. Г. Титовым и космонавтом-исследователем А. А. Серебровым. Программа полёта предусматривала выполнение исследований и экспериментов на борту пилотируемого орбитального комплекса «Салют-7» — «Космос-1114» — «Союз Т-8», но из-за отклонения от предусмотренных режимов сближения Центр управления полётом принял решение стыковку космического корабля «Союз Т-8» с орбитальным космическим комплексом отменить.
С июля по сентябрь 1983 года Г. М. Стрекалов совместно с В. Г. Титовым прошёл курс подготовки по программе основного экипажа космической экспедиции на орбитальную станцию «Салют-7». Но космическому полёту не суждено было осуществиться, так как 26 сентября 1983 года, за несколько секунд до старта загорелась ракета-носитель. Космонавты успели катапультироваться по команде из бункера управления, и были эвакуированы с помощью системы аварийного спасения. После периода реадаптации и отдыха Г. М. Стрекалов вернулся на работу в НПО «Энергия».
Третий космический полёт он совершил с 3 по 11 апреля 1984 года в качестве бортинженера международного экипажа совместно с командиром экипажа Ю. В. Малышевым и космонавтом-исследователем гражданином Республики Индии Ракешем Шармой на космическом корабле «Союз Т-11» и орбитальном научно-исследовательском комплексе «Салют-7» — «Союз Т-10».
Четвёртый космический полёт Г. М. Стрекалов совершил с 1 августа по 10 декабря 1990 года в качестве бортинженера космического корабля «Союз ТМ-10» и орбитального комплекса «Мир» совместно с Г. М. Манаковым. В ходе этого полёта, 30 октября 1990 года Г. М. Стрекалов осуществил выход в открытый космос продолжительностью 2 часа 45 минут для уточнения объёма необходимых работ по ремонту выходного люка модуля «Квант-2».
Пятый космический полёт с 14 марта по 7 июля 1995 года — в качестве бортинженера на орбитальном комплексе «Союз ТМ-21» — «Мир» — «Атлантис» вместе с командиром экипажа В. Н. Дежуровым и космонавтом-исследователем гражданином США Норманом Тагартом. В ходе полёта, за период с 12 мая по 1 июня Г. М. Стрекалов совершил пять выходов в открытый космос.
Инструктор-испытатель, космонавт 1-го класса отряда космонавтов ГКБ РКК «Энергия», кандидат технических наук Г. М. Стрекалов, помимо научной, вёл и активную общественную деятельность, являясь с 1991 года Председателем Российского Комитета защиты мира.
Скончался 25 декабря 2004 года. Похоронен в Москве на Останкинском кладбище.
Почётный гражданин городов Королёв и Мытищи.