23 июня советские войска перешли в широкомасштабное наступление на центральном участке фронта. Немецкая армия, оказавшаяся в катастрофическом положении под двойным ударом, начала стремительно отступать на Западе и на Востоке. 28 июня был освобождён Могилёв, 3 июля — Минск, 13 июля — Вильнюс, 27 июля — Львов. Целью советских войск был выход к рубежам Висла—Нарев. Спасая ситуацию, немцы перебрасывали свежие силы за счёт ослабления других групп армии. После тяжёлых наступательных боёв 29 июля войска 1-го Украинского фронта форсировали Вислу в районе Сандомира в 180 км к юго-востоку от Варшавы. Войска 69-й армии (генерал-лейтенант В. Я. Колпакчи) с 29 июля по 1 августа форсировали Вислу у Пулав на фронте в 25 км и захватили три тактических плацдарма, каждый размером 3—4 км по фронту и 1—2 км в глубину. 31 июля Вислу неудачно попыталась форсировать 1-я польская армия. Передовые отряды 8-й гвардейской армии (генерал-полковник В. И. Чуйков) 1 августа форсировали Вислу и закрепились на левом берегу в районе Магнушев в 60 км южнее Варшавы. Вместе с тем враг не был сломлен и отчаянно сопротивлялся. 23 июля новый начальник генерального штаба сухопутных войск вермахта генерал-полковник Гудериан приказал непременно удержать рубеж pек Висла и Сан, поскольку «иначе можно постепенно откатиться до Одера и Эльбы». Главные силы немецкой 2-й армии смогли избежать окружения, отойдя северо-восточнее Варшавы.