Бои продолжались и становились более упорными и ожесточенными. 30 мая противник ввел в сражение свежие части. В результате того, что силы 1-й Конной армий рассредоточились на широком фронте и действия дивизий были слабо связаны между собой, противнику удалось выбить советские войска из Ново-Фастова и города Липовца. Последующие попытки 1-й Конной армии прорвать оборону противника не увенчались успехом. Отдельные части 1-й Конной армии пытались лобовой атакой разгромить опорные пункты сопротивления противника. В результате этого они втянулись в затяжные кровопролитные бои, которые не дали и не могли дать существенных результатов. В частности, войска 1-й Конной продолжали ожесточенные бои в районе Погребища и города Липовца. Здесь они понесли значительные потери, однако взять населенные пункты им так и не удалось.
Хотя развернувшиеся бои и не дали существенных результатов, но они позволили командованию фронтом и армиями более четко определить оборону противника и группировку его сил. Эти бои выявили и ряд существенных недостатков в организации и ведении наступления советских войск. Реввоенсовет Юго-Западного фронта тщательно проанализировал первые дни боев и сделал соответствующие выводы, которые были изложены в телеграммах члена РВС фронта И. В. Сталина В. И. Ленину 31 мая и Реввоенсовету республики 1 июня 1920 г. В телеграммах выдвигалась просьба РВС Юго-Западного фронта о присылке фронту двух стрелковых дивизий с Северного Кавказа. В. И. Ленин просьбу РВС Юго-Западного фронта поставил на обсуждение членов Политбюро ЦК РКП(б). В результате обмена мнениями было решено не снимать просимые Юго-Западным фронтом две дивизии с Кавказского фронта. Эти дивизии с Кавказского фронта нельзя было брать потому, что в это время усилились антисоветские выступления на Кубани: ослаблением сил Кавказского фронта мог воспользоваться Врангель. Отвечая на запрос Реввоенсовета Юго-Западного фронта, В. И. Ленин в телеграмме 2 июня 1920 г. писал, что в связи с тяжелым положением, создавшимся на Западном фронте, надо «просимые Вами дивизии отдать туда, а с Кавказского фронта больше взять нельзя, ибо там восстания и положение архитревожное». Далее В. И. Ленин писал, что приняты меры по присылке пополнений Юго-Западному фронту. «Старайтесь подтянуть части во что бы то ни стало, — подчеркивал В. И. Ленин. — Продолжайте начатое наступление энергичнее».
В. И. Ленин напомнил Реввоенсовету Юго-Западного фронта о том, что «по решению Политбюро наступление на Крым приостановлено впредь до новых решений Политбюро».30
Таким образом, от командования фронта требовалось, чтобы оно главные силы бросило для проведения киевской наступательной операции. Руководствуясь указаниями ЦК партии и проанализировав опыт наступательных боев в период с 26 мая по 3 июня 1920 г., Реввоенсовет Юго-Западного фронта наметил мероприятия по прорыву обороны противника. Командующим армиями было приказано отказаться от лобовых атак вражеских укреплений, тщательно готовить каждую наступательную операцию, на важнейших направлениях действовать ударными группами.
Еще 31 мая 1920 г. Реввоенсовет Юго-Западного фронта дал указание командованию 12-й армии прекратить лобовые атаки Киева, оставить против киевского плацдарма противника только 58-ю стрелковую дивизию. Все остальные силы армии свести в ударную группу для форсирования реки Днепр и прорыва фронта севернее Киева. Для обеспечения действий войск 12-й армии при форсировании Днепра Реввоенсовет фронта выделил северный отряд Днепровской флотилии, командиром которого был М. Г. Степанов, старый балтийский моряк, комиссаром — И. Данилов, моряк, в прошлом рабочий, член партии с 1917 г.
14-й армии было приказано собрать основные силы на своем правом фланге.
3 июня 1920 г. И. В. Сталин от имени Реввоенсовета Юго-Западного фронта направил на имя С. М. Буденного и К. Е. Ворошилова специальную телеграмму, в которой указал на причины неудач боевых действий частей 1-й Конной армии в районе Липовца и Погребищ, проведенных в период с 30 мая по 2 июня. В телеграмме говорилось, что бои в районе Липовца и Погребищ показывают, что противник искусно сочетает маневренную войну с войной траншейной. В этих условиях Конной армии нельзя было обойтись без собственной пехоты, которая должна сковать противника с фронта, с тем чтобы кавалерийские части могли беспрепятственно совершать глубокие обходы укрепленных пунктов противника. Командованию 1-й Конной армии предписывалось отказаться от лобовых атак укрепленных пунктов кавалерийскими частями. Рекомендовалось укрепленные места обходить.31
В этот же день Реввоенсовет Юго-Западного фронта поставил 1-й Конной армии задачу прорыва фронта. В директиве указывалось, что главная цель 1-й Конной — разгром киевской группы войск противника. Было также приказано выставить заслон в районе Липовец — Погребище, основными же силами прорвать фронт войск Пилсудского на линии Ново-Фастов — Пустоваровка, чтобы стремительным ударом захватить район Фастова и, действуя по тылам, разбить киевскую группу противника.32
Для выполнения операции по прорыву фронта противника 1-я Конная армия была сосредоточена на участке в 10 км северо-восточнее Ново-Фастова. Боевое построение 1-й Конной армии было многоэшелонным. В первом эшелоне находилась 4-я кавалерийская дивизия, уступом за ее флангами — 14-я и 11-я кавдивизии и в третьем эшелоне — 6-я кавалерийская дивизия и особая кавбригада. Глубокоэшелонное построение 1-й Конной армии обеспечивало наращивание силы удара в ходе наступления.
В связи с тем что польские войска имели хорошую артиллерию, С. М. Буденный и К. Е. Ворошилов обратились в Реввоенсовет Юго-Западного фронта с просьбой усилить 1-ю Конную армию артиллерией. Реввоенсовет немедленно дал указание командующему 14-й армией, действовавшей на вспомогательном направлении, выделить для 1-й Конной армии две артиллерийские батареи с запасом снарядов.33 Одновременно было приказано в срочном порядке направить из Таганрога в распоряжение командования 1-й Конной армии конно-артиллерийский и запасной артиллерийский дивизионы.
В связи с тем что предстоявший рейд требовал быстроты передвижения частей, командование 1-й Конной армии 4 июня приказало разгрузить конные части от малоподвижных обозов и отправить их в тыл в район станции Поташ.34
В первых числах июня Реввоенсовет 1-й Конной армии разработал специальный приказ о тактике действий конницы в предстоявшем наступлении. Накануне операции приказ был изучен во всех подразделениях 1-й Конной армии. Проведенные мероприятия сыграли важную роль в успешном прорыве фронта противника.
К вечеру 3 июня 1-я Конная армия заняла исходный рубеж для наступления. В эти дни стояла дождливая погода. Польское командование рассчитывало, что плохая погода помешает советским войскам начать военные действия. На рассвете 5 июня 1920 г. 1-я Конная армия перешла в наступление. Дождь и густой туман позволили советским конникам скрыто выйти на рубеж атаки и перейти в стремительное наступление. Когда же польские войска заметили советских бойцов, было уже поздно. Под ураганным огнем пулеметов и артиллерии красные конники, искусно сочетая бой в пешем и конном строю, преодолели проволочные заграждения противника и смяли его передовые части. Через два часа после начала атаки польский фронт был прорван в районе Попельня — Казатин. В этих боях особенно отличились кавалеристы 14-й дивизии под командованием А. Я. Пархоменко.
Контрнаступление советских войск было настолько стремительным, что к вечеру того же дня 1-я Конная армия прорвалась севернее и восточнее Казатина, разрушив в ряде мест железную дорогу Фастов — Казатин — Липовец, и вышла в тыл 3-й польской армии. 7 июня 4-я кавалерийская дивизия овладела Житомиром, уничтожив польский гарнизон и освободив из плена 5 тыс. красноармейцев, которые сразу же встали в строй. Из тюрем было освобождено 2 тыс. политических заключенных. У интервентов были захвачены два вагона военного снаряжения. В этот же день 11-я кавалерийская дивизия заняла Бердичев. Кроме того, 1-я Конная армия разбила в районе Белополья польскую конную группу под командованием генерала Савицкого, прикрывавшую левый фланг 6-й польской армии. К 8 июня 1-я Конная армия окончательно сломила сопротивление войск противника, сосредоточенных в районе Казатина и Бердичева. Глубина прорыва 1-й Конной армии в тыл польских войск составила 120–140 км. Польский фронт на Украине оказался расколотым на две части. Потеряв управление своими войсками, польский штаб во главе с Пилсудским, находившийся в Житомире, в панике бежал в Новоград-Волынский.