К этому времени крайне благоприятная обстановка сложилась на львовском направлении. Львов являлся одним из важнейших стратегических объектов и крупным центром коммуникаций противника, во многом определявшим устойчивость его обороны. В связи с этим сам город и прилегающая к нему местность были сильно укреплены. Ближайшие селения были превращены в опорные пункты с развитой системой укреплений и инженерных заграждений. Но сил у немцев в районе Львова было недостаточно, оперативные резервы они уже израсходовали. Войска 3-й гвардейской танковой армии и 13-й армии находились в 20–30 км от города. 4-я танковая армия своим 10-м гвардейским танковым корпусом вышла в район Ольшаницы, в 30 км восточнее Львова. С севера город охватывала конно-механизированная группа Баранова. В этой ситуации ночью 19 июля Конев отдал приказ генералу Рыбалко обходным маневром с севера и северо-запада, а генералу Лелюшенко с юга овладеть Львовом не позднее утра 20 июля. Однако сделать этого не удалось. Как справедливо заметил в своих воспоминаниях Лелюшенко, которому пришлось с ходу поворачивать свои войска на 90 градусов на север: «Это была новая задача — не обходить Львов, а брать его». Причем брать чисто танковыми соединениями.
Конно-механизированная группа Баранова вместо стремительного броска на запад ввязалась во фронтальные атаки за Жолкев и не выполнила поставленной перед ней задачи. Конев торопил: «Топтание группы вторые сутки перед слабым противником — преступление». Но и 21 июля корпуса Баранова бились лбом о Жолкев.
4-я танковая армия вела безуспешные бои одним корпусом на юго-восточных подступах к Львову. Остальные ее силы были связаны обороной колтовского коридора и отражением контрудара 48-го танкового корпуса, в котором, кстати, не было ни одной танковой дивизии. Встретив у города упорное сопротивление, армия не смогла продолжить наступление, ее силы оказались разбросанными в четырех районах.
Генерал Рыбалко, стремясь скорее взять Львов, не мудрствовал лукаво и вместо обходного маневра атаковал немецкие позиции по кратчайшему расстоянию по дороге Красное—Львов. Энтузиазм командарма подстегивало то обстоятельство, что на пути к городу армия не встретила сколько-нибудь значительного сопротивления. В результате танки уперлись в торфяное болото и втянулись в затяжные бои на крайне неудобной местности.
«С первого взгляда — поле как поле, — вспоминает генерал B.C. Архипов, — а в действительности — слабый торфяник, предательски покрытый густой зеленой травой. Гусеницы танков прорывали глубокие черные колеи, которые тотчас заполняла вода… В такой обстановке на заболоченной, исключавшей всякую возможность маневра местности наши подразделения предприняли несколько атак. Они были неудачными. Пришлось доложить генералу Новикову, что танки вязнут, мы несем потери, а продвижения нет… Более двух суток мы вели бой практически на месте… все мы чувствовали очень остро, что блестяще начатый рейд танков, прошедший вопреки бездорожью и плохой погоде в хорошем темпе и с минимальными потерями, вдруг застопорился».
Из-за сильных дождей, размывших дороги, тылы отстали и не успевали своевременно подвозить боеприпасы и горючее. Несмотря на указания Конева совершить обходное движение, Рыбалко «увлекся». До города оставалось 7–8 км, и он хорошо просматривался с наблюдательных пунктов. Командиры корпусов докладывали, что нужен еще небольшой натиск, и бригады ворвутся во Львов. На отдельных участках танкисты клиньями врезались в оборону противника, но каждый раз немцы подбрасывали к участку прорыва свежие силы и стабилизировали положение.
Основные силы 60-й армии и левофланговые дивизии 13-й армии с приданными им двумя танковыми корпусами были скованы окруженной бродской группировкой противника.
Ход операции значительно выбивался из графика, немцы, навязывая затяжные бои, сбивали темп продвижения советских войск.
20 июля генерал Катуков получил приказ повернуть 1-ю гвардейскую танковую армию на юго-запад и стремительно развивать наступление к реке Сан с тем, чтобы, форсировав ее, перехватить пути отхода противника на запад.
За это время немцы успели перебросить в район Львова со Станиславского направления части трех дивизий и укрепить здесь свою оборону. Обстановка, сложившаяся под Львовом к исходу 21 июля, уже не позволяла овладеть городом с ходу силами только танковых армий.
Опасаясь флангового удара советских войск со стороны Перемышля на юг, германское командование стало отводить со Станиславского направления на запад части 24-го танкового и 59-го армейского корпусов. Войска 38-й и правого фланга 1-й гвардейской армий, сбивая арьергарды, начали преследование. Чтобы отрезать немцам пути отхода, генерал Лелюшенко получил указание немедленно нанести стремительный удар южнее Львова на Самбор, разгромить тылы противника и не допустить отхода львовско-станиславской группировки.