Корабль «Союз-4» стартовал 14 января1969 года. На следующий день с космодромаБайконур стартовал «Союз-5», на борту которого находились трое космонавтов. 16 января в 08:20 UTC корабли «Союз-4» и «Союз-5» состыковались[1]. Это была первая в мире стыковка двух пилотируемых кораблей. Во время стыковки активным кораблем был «Союз-4», стыковочный узел которого был оборудован штырём. Стыковочный узел «Союза-5» был оборудован приёмным конусом.
На 35-м витке космонавты Хрунов и Елисеев вышли в открытый космос из корабля «Союз-5» и перешли в корабль «Союз-4». Этот переход был элементом подготовки к предполагаемому полёту на Луну. После стыковки агентство ТАСС объявило, что впервые на орбите создана экспериментальная космическая станция с четырьмя космонавтами на борту. Советское телевидение вело прямую трансляцию перехода космонавтов Хрунова и Елисеева. Космонавты Хрунов и Елисеев использовали скафандры «Ястреб», командир корабля Борис Волынов помогал им облачаться в скафандры, проверял системы жизнеобеспечения и коммуникаций скафандров. Затем Волынов вернулся в спускаемый аппарат и закрыл люк между орбитальным отсеком и спускаемым аппаратом корабля «Союз-5». Корабли «Союз» модели «7К-ОК» не имели переходного люка в стыковочном узле. Во время перехода орбитальные отсеки кораблей использовались в качестве шлюзовых камер. После разгерметизации орбитального отсека первым в открытый космос вышел Евгений Хрунов. В это время состыкованные корабли находились над Южной Америкой и не имели радиоконтакта с центром управления полётом в СССР. Выход Елисеева происходил уже над территорией СССР, когда поддерживался радиоконтакт с Землёй. Елисеев закрыл за собой люк «Союза-5». Хрунов и Елисеев перешли в орбитальный отсек «Союза-4», который затем был наполнен воздухом, командир «Союза-4» Владимир Шаталов помог Хрунову и Елисееву снять скафандры. Хрунов и Елисеев передали Шаталову письма, телеграммы и газеты, которые вышли уже после старта Шаталова в космос.
Корабли «Союз-4» и «Союз-5» находились в состыкованном состоянии 4 часа 35 минут.
«Союз-4» приземлился 17 января в 40 км юго-западнее Караганды, в 48 километрах от расчётной точки приземления. На месте приземления температура была около −30 °C, высота снежного покрова — 60—80 сантиметров. Поисковый вертолёт обнаружил спускаемый аппарат через 5 минут после приземления.
1 К ОС ДОС-1 (Салют-1). 2 К ОС ДОС-2 и ДОС-3 (Космос-557). 3 К ОС ОПС-1 (Салют-2/Алмаз). 4 К ОС ОПС-2 (Салют-3/Алмаз). 5 К ОС ОПС-3 (Салют-5/Алмаз). 6 К ОС ДОС-5-2 (Салют-7) (экспедиции посещения к 5-й основной экспедиции).