Противники сошлись 8 сентября, а решающая битва на небольшой болотистой равнине у реки Иква (Пилявка), где заранее окопался табором Богдан Хмельницкий, началась 11 сентября. Поляки попытались пробиться к казацкому лагерю и даже захватили узкую плотину, по которой они, неся существенные потери, перешли на правый берег реки. Несколько раз плотина переходила из рук в руки, пока в итоге украинцы не были вынуждены оставить ее поляками и вернуться под прикрытие возов в свой заранее оборудованный лагерь. Не имевшие собственного лагеря поляки провели всю ночь в боевых порядках, ожидая атаки со стороны казаков, что существенно подточило силы солдат.
12 сентября битва продолжилась, причем казацкое войско успешно связывало боевые порядки противника, а татарская и украинская конница истребляла действовавшие беспорядочно и несогласованно отряды польской кавалерии. Исход сражения во многом решило прибытие к вечеру Белгородской татарской орды, вызвавшее сумятицу во вражеском стане. На созванном Домиником Заславским прямо на конях военном совете было принято решение отступать под прикрытием табора из возов.
Организованного отступления у поляков, впрочем, не получилось – очень быстро оно превратилось в беспорядочное паническое бегство. 13 сентября казаки вышли из лагеря и, выстроившись в боевые порядки, при поддержке татарской конницы двинулись в наступление. Мощным ударом наступавшие отбили плотину, и вскоре отступление ляхов стало повальным бегством. Масла в огонь всеобщей паники подлил молниеносно разнесшийся среди поляков слух о скором прибытии всей крымской орды во главе с самим ханом – даже ложное известие о прибытии татарских подкреплений вселяло ужас. Когда в разгар боя в казацкий лагерь действительно прибыл незначительный татарский отряд, ему показательно устроили такую громкую и пышную встречу, что у поляков не возникло ни малейших сомнений в том, что на помощь Хмельницкому прибыл сам Ислям Герай с минимум тридцатитысячным войском.
Первыми бежали главнокомандующие, а «войско, увидев, что нет вождей, бросило на землю оружие, панцири, копья, и все бросилось врассыпную». Александр Конецпольский бежал, переодевшись в простую крестьянскую одежду, Ярема Вишневецкий на крестьянской подводе, Миколай Остророг потерял во время панического бегства шапку и опанчу, а Доминик Заславский – даже гетманскую булаву. Некоторые шляхтичи бежали так быстро, что преодолели расстояние в 300 километров до Львова за два дня – даже летучие татары и те не смогли бы догнать их в столь стремительном бегстве.
Современник событий польский шляхтич С. Твардовский так писал о польских горе-вояках, бежавших из-под Пилявцев: «Не остановить движения скалы, которая оторвалась от горы, и не поднять Трою, когда она ввергнута в прах! Какой шум, какой хаос царил там, когда множество людей, не зная даже в чем дело, выскакивали из своих жилищ, бросали одни оружие, другие – копья на землю, иные, только ото сна вскочив, хватались за что ни попадя – кто за коня, кто за саблю, за уздечку, за седло. Раненых, больных – все бросали и вверяли свою жизнь ногам. Все добро и богатство, которое имели здесь поляки, все отдали на поживу своим хлопам. И этим на короткое время задержали врага, а сами смогли убежать дальше».
Казаки и крымцы захватили колоссальные трофеи – более 90 пушек, запасы пороха, оружия и прочего военного снаряжения, тысячи лошадей и волов, а также десятки тысяч возов с теми самыми предметами роскоши, которые столь недальновидно взяли с собой в военный поход польские шляхтичи и магнаты. Общую стоимость захваченного добра и снаряжения современники оценивали в колоссальную по тем временам сумму – от 7 до 10 миллионов золотых!
Разгром польского войска открыл для казаков возможность беспрепятственного движения на запад, чем они и воспользовались. В начале октября повстанцы уже разорили предместья Львова и три недели держали город в осаде, пока не получили контрибуцию – более 200 тысяч дукатов, то есть 1 миллион 200 тысяч злотых. После этого крымские татары под командованием калги Крыма Герая, удовлетворенные добычей и уставшие от похода, повернули домой. Хмельницкий же двинулся далее на стратегически значимое Замостье, которое было ключом от Варшавы. Из крымцев с гетманом остался лишь верный Тугай-бей, отряды которого нагоняли ужас и на окрестности, и на защитников Львова, и, впоследствии, на тех, кто оборонял Замостье. Осада Замостья длилась весь ноябрь, пока поляки выбирали нового короля. Им стал Ян ІІ Казимир (1648–1668 гг.), и казацкий гетман, полагая, что сможет добиться от нового короля нужных прав и уступок, повернул домой.