Крымскі хан Менглі-Гірэй з 40 тысячным войскам, вясной 1512 года, уварваўся на тэрыторыю Вялікага Княства Літоўскага, рабуючы і руйнуючы землі Падолля і Валыні, адпраўляючы свае загоны аж да самага Кракава. Захапіўшы палонных і разрабаваўшы бліжэйшыя землі, Менглі-Гірэй стаў лагерам недалёка ад Вішняўца, каля вёскі Лапушна.
У гэты час Канстанцін Астрожскі, не чакаючы падыходу войскаў ВКЛ, з невялікім атрадам адправіўся насустрач татарам, па дарозе да яго далучыліся Юрый і Ян Радзівілы, Аляксандр Чартарыйскі, Міхаіл Вішнявецкі і Андрэй Збарожскі.
Астрожскі да Вішняўца падышоў ноччу 28 красавіка 1512 года. Тут яго ўжо чакаў Польскі гетман Мікалай Ланцкаронскі з трохтысячным атрадам, і колькасць войска Астрожскага павялічылася ўдвая, склаўшы 6 тысяч чалавек.
Сваё войска Астрожскі выбудаваў у адну лінію: у цэнтры стаяла ліцвінская і Валынская шляхта, на левым флангу польскія ваяры, а на правым флангу ён устаў сам са сваёй конніцай.
Як толькі развіднела, татары кінулі ў атаку, іх разам з конніцай сустрэў Астрожскі, літоўская і Валынская шляхта стала наступаць па цэнтры, а палякам Астрожскі загадаў ударыць па флангу.
Не вытрымаўшы флангавых атакі палякаў, татары пачалі адступаць да багністага берага, якi знаходзіўся недалёка ад поля бітвы на раце Гарыні. Там многія з татараў патанулі. Другая частка палякаў уварвалася ў татарскі лагер і вызваліла 16 тысяч палонных, і з тымі, хто мог узяць у рукі зброю, ударыла ў тыл татарам.
Як аказалася, вельмі своечасова, таму што Астрожскі з конніцай быў ужо акружаны. Гэтак нечаканы ўдар са спіны напалохаў татараў і сам Менглі-Гірэй першым пабег з поля бітвы, а следам за ім - усе астатнія. Праз чатыры гадзіны бітва была скончана, з 30-тысячнага войска татараў было забіта альбо патанула ў балоце 24 тысячы чалавек.