После неудачного завершения первых армейских оборонительных операций на линии государственной границы СССР и проведения фронтового контрудара войскам Юго-Западного и Южного фронтов ничего не оставалось, как начать отходить в восточном направлении, надеясь зацепиться за рубежи рек или за линию укрепленных районов, расположенных на старой границе СССР. Правда, они не знали, что на то время эти укрепленные районы далеко не отвечали предъявлявшимся к ним требованиям. Так, если Коростенский, Новоград-Волынский и Летичевский укрепленные районы имели в мирное время кадры артиллеристов и пулеметчиков для занятия дотов, то Остропольский, Шепетовский, Изяславский, Староконстантиновский и Проскуровский укрепленные районы не имели ни войск, ни подготовленных инженерных сооружений, и поэтому не могли быть эффективно использованы отходившими на них войсками.
Особо важная роль в планах командования фронтом отводилась Остропольскому укрепленному району, который должен был связать фланги Новоград-Волынского и Летического укрепленных районов. Он неоднократно упоминался в оперативных документах, но надлежащей для того силы не имел. Такое же положение оказалось и на стыке Летичевского и Могилев-Подольского укрепленных районов в районе села Мурованые Куриловцы, которые должны были обеспечить оперативную связь между Юго-Западным и Южным фронтами.
В результате такого состояния большинства укрепленных районов отход войск на их линию, в сущности, ничем не отличался от отхода на обычный рубеж. Так, 5-я армия, на левом фланге которой противник наносил свой главный удар, по-прежнему почему-то держала имевшиеся у нее резервы (15-й стрелковый корпус) на правом фланге, не вводя их в действие на наиболее угрожаемом направлении. Это привело к тому, что противник 10 июля сравнительно легко занял Житомир и начал развивать свое наступление на Киев. В связи с этим полоса армии растянулась на 300 километров, а фронт ее повернулся с запада на юг.
На 200-километровом фронте 6-й армии к 1 июля действовало восемь соединений, которые когда-то представляли собой три стрелковых, четыре механизированных и один кавалерийский корпус. Несмотря на то что к тому времени корпусные формирования уже свое тактическое значение потеряли, их управления по-прежнему продолжали руководить подчиненными войсками и отдавать им указания, которые нередко перечили армейским. Кроме того, в полосе армии находилось множество частей корпусного подчинения, которые вообще не получали никаких указаний и нередко действовали на свой страх и риск. В результате этого в полосе перенасыщенной войсками 6-й армии возникло хаотическое движение сил и средств, которое не поддавалось никакой организации и только порождало беспорядок и панику.
После 1 июля 6-я армия находилась в состоянии непрерывного отхода и арьергардных боев в крайне неблагоприятных условиях разорванного фронта. Ее 36-й стрелковый корпус и 14-я кавалерийская дивизия, охваченные противником справа и слева, отходили на рубеж Изяслав, Ямполь. 37-й стрелковый корпус, охваченный справа из района Подкамень, Броды и слева из района Буск, отходил на рубеж Збарж, Тернополь. 6-й стрелковый корпус также отходил на Тернополь. Остатки 4-го механизированного корпуса и 3-я кавалерийская дивизия оборонялись в районе Золочева. Остатки 15-го механизированного корпуса использовались в качестве армейского резерва для латания внезапно возникавших дыр. На дорогах Львов, Тернополь сгрудилось большое количество техники, войск, тыловых колонн и беженцев.
Пункт управления Юго-Западного фронта 30 июня из Тернополя переместился в Проскуров, в неподготовленные для этого помещения, и попытался наладить связь с армиями по имевшимся стационарным линиям связи. Но, как оказалось, эти линии были во многих местах повреждены немецкой авиацией и диверсантами, в результате чего система управления работала очень неустойчиво.
2 июля противник, продолжая наступление на киевском направлении, продвинулся значительно далее на восток и овладел Шепетовкой. Часть сил его ударной группировки была перенацелена для нанесения удара по правому флангу 6-й армии. В результате этого правый фланг армии начал постепенно заворачиваться на юг, образуя разрыв между соседней 5-й армией, которая в это же время была вынуждена заворачивать свой левый фланг на север.
4 июля штаб Юго-Западного фронта, пытаясь разобраться в обстановке, наконец-то решил определить направление главного удара противника на левом крыле советско-германского фронта. После долгих обсуждений командующий и начальник штаба пришли к выводу, что фашистское командование в полосе Юго-Западного фронта наносит два равноценных удара: один в направлении Ровно – Житомир, второй – Тернополь – Проскуров. Первый удар приходился на стыке 5-й и 6-й армий, второй – в полосе 6-й армии. Таким образом, в очередной раз подтверждалось, что судьба обороны фронта зависит от исхода операции 6-й армии, как это и предполагалось ранее.