Данила діяти надзвичайно рішуче. Перейшовши Сян і вишикувавши військо в кілька полків, князь розпочав бій навальним наступом. За логікою княжих часів, Данило очолював чоло (центр), Василько – також вельми престижне праве крило, Лев – ліве, авангардом командував Андрій. Його вороги, можливо, мали такий самий розчленований бойовий порядок. У центрі явно стояв Ростислав, бо йому як формальному головнокомандувачеві личило стати лише в одному місці – навпроти ворожого князя, тобто свого дядька, Данила. Зліва – поляки Флоріана Войцеховича, оскільки з ними бився Василько. Праве крило могли становити галицькі бояри-вигнанці або частина угорців. Досвідчений Фільній очолював резерв – засадний полк, сподіваючись, що гарячі русичі швидко виснажаться внаслідок свого нестримного наступу і настане слушний час для вирішального удару. Можливо, дещо темний, але докладний і цікавий опис битви літописцем треба розуміти так: першими в бій вступили авангард Данила на чолі з Андрієм і ворожий центр – гарячий Ростислав Михайлович кинувся на ворога, перейшовши глибокий яр. Сутичка була жорсткою й затятою, Данило кілька разів надсилав своєму полководцеві підкріплення, оскільки Ростислав почав брати над ним гору і частина авангарду відступила до берега Сяну. Тим часом Василько на своєму фланзі зав’язав бій із польськими лицарями, що йшли в бій, грізно співаючи традиційну «Богуродзіцу», і хід бою тут довго залишався неясним. Далі сталася центральна в історії Ярославської битви подія – Данило разом із якоюсь частиною війська, кількома боярами і сином Львом зумів прорватися через ворожий фронт (чи таки здійснив фланговий обхід?) і напасти на ворожий резерв – засадний полк здавна ненависного князеві бана Фільнія. Попри величезний ризик володар Галичини бився на списах з охороною Фільнія, ледь не потрапив до бана в полон, чому завадила атака Льва Даниловича, котрий, захищаючи батька, зламав об міцні обладунки угорського воєначальника свій спис. Повторна кінна атака воїнів і бояр Данила розметала угорський полк, Фільній кинувся тікати і був згодом узятий у полон. Тріумфуючи, Данило розірвав угорський прапор, що призвело до падіння моралі у війську Ростислава, який, можливо на той момент уже прагнув вважати себе переможцем. Втеча племінника не могла заспокоїти князя Данила – неясною залишалася доля бою на фланзі Василька. Проте і там Романовичам пощастило: Василько особисто повів воїнів в атаку, і польські лицарі кинулися тікати. Ворога переслідували половці.
Наслідки події Результатом битви став остаточний розгром галицької боярської опозиції, зміцнення внутрішнього миру та міжнародного престижу Галицько-Волинського князівства, переорієнтація відносин Данила і Бели IV на стримано-дружні та остаточна втрата Ростиславом Михайловичем шансів претендувати на галицький стіл. Щоправда, це не завадило племіннику Данила Галицького стати самопроголошеним болгарським царем (помер у Белграді 1264 р.).
Історична пам’ять Битва відносно добре