Сразу после победы под Желтыми Водами Хмельницкий вместе с Тугай-беем идет форсированным маршем на Корсунь, чтобы воспрепятствовать объединению главных сил поляков под руководством гетманов Потоцкого и Калиновского с князем Иеремией (Яремой) Вишневецким. Хмельницкий подошел к Корсуни утром 15 мая, и его силы (по пути следования к восставшим массово присоединялись крестьяне) насчитывали около 20 тысяч пеших при 26 пушках и примерно 4 тысячи всадников Туган-бея (приводимая в некоторых источниках цифра в 20 тысяч всадников явно в несколько раз преувеличена).
Хмельницкому противостояло около 20 тысяч поляков, но они были в значительной степени деморализованы известием о поражении под Желтыми Водами, и гетман Потоцкий принял решение отступить, не принимая боя.
Разведка Хмельницкого и на этот раз сработала чрезвычайно эффективно – вождь восстания немедленно узнал о готовящемся отступлении. Гетман правильно рассчитал, что ему необходимо воспользоваться моментом растерянности поляков и уничтожить их основные силы. В случае успеха задуманного на Украине больше бы не оставалось значительных сил Речи Посполитой (для сбора нового войска Варшаве понадобилось бы немало времени), что означало бы победу восстания. Не давая времени полякам принять боевое построение, Хмельницкий 15 мая с ходу бросил против их левого фланга татарскую конницу, а скованному боем противнику уже значительно труднее было начать отступление. Одновременно гетман получил необходимое ему время для перегруппировки с марша войск в наиболее выгодное для атаки всеми силами построение.
Поставленной цели он достиг. Пока поляки отражали атаки Туган-бея и сами контратаковали татар, Хмельницкий беспрепятственно занял господствующие над местностью высоты (что еще более увеличивало их ценность, полуохватывающие польское расположение). Гетман также использовал полученное время, чтобы максимально затруднить полякам отступление, и приказал полковнику Максиму Кривоносу перекрыть единственно возможный путь их отхода – дорогу, ведущую через урочище Кривая Балка. Полковник выполнил приказ при помощи пехотного отряда численностью примерно в 6 тысяч казаков с несколькими пушками – за короткое время он сумел устроиться внизу балки, сразу после высокого спуска засеки, вырыть глубокий ров, расположить казаков в подготовленных шанцах и пушки на противоположной стороне балки.
Утром 16 мая поляки начали отступление по Богуславской дороге. Для избежания внезапного нападения они приняли следующее боевое построение. По бокам колонны были пехотинцы, которые прикрывали поставленную в середину колонны артиллерию, а кавалерийские хоругви выполняли функции арьергарда. Но отступавшим удалось беспрепятственно пройти всего несколько километров. Вскоре гетман отдал приказ начать атаки на колонну небольшими отрядами, которые и стали проводить частые тревожащие вылазки. Сколько-нибудь серьезного ущерба полякам тревожащий обстрел из пищалей не наносил, но он сильно замедлял темп их движения и расстраивал защитный порядок построения. А нарушенное защитное построение, в свою очередь, открывало возможности для дальнейшего нападения крупными силами.
Благодаря замедлению темпа продвижения поляков, Кривонос успел расширить ров, который уже нельзя было обойти (слева находилась непроходимая болотистая местность, а справа высокие кручи, непреодолимые для кавалерии и артиллерии и почти непреодолимые для пехоты), и полностью подготовиться к подходу отступавшего неприятеля.
Однако еще до подхода к Кривой Балке войско Потоцкого понесло существенную потерю. Деморализованные непрекращающимся обстрелом, около 2 тысяч пехотинцев, захватив свободных лошадей, просто бежали, бросив своих товарищей.
В полночь поляки подошли к спускавшемуся в Кривую Балку склону. Кривонос правильно рассчитал, что по крутому склону покатятся вниз многочисленные польские повозки и пушки и, достигнув глубокого рва, перевернутся. Сразу открыла огонь артиллерия, а полякам теперь нечем было ее подавить. Тут же казаки Кривоноса нанесли удары с фронта и флангов, а вскоре в тыл полякам ударили подошедшие казаки Хмельницкого и конница Туган-бея.
Дальнейшее правильнее назвать не сражением, а добиванием совершенно деморализованного противника, который не только не мог отступить, но и принять защитное построение. Через четыре часа все было закончено – польское войско было уничтожено. Погибло около 10 тысяч поляков, а относительно количества пленных есть точные цифры – 80 видных шляхтичей, 127 офицеров, 8521 жолнер. Попали в плен и сами гетманы Потоцкий и Калиновский, которых Хмельницкий отдал Туган-бею в знак благодарности за оказанную помощь. Кроме того, Хмельницкий захватил огромное количество трофеев, в том числе 41 пушку.