Walka trwała już 3 godziny i przyniosła siłom Ottokara wielkie straty. Ciężkie uzbrojenie stało się przeszkodą w prowadzeniu długiej walki. W tej sytuacji Rudolf nakazał ukrytym wcześniej rycerzom włączenie się do walki. Ostatni, wypoczęty szyk ciężkozbrojnych zadał wojskom Ottokara miażdżącą klęskę. Wielu otoczonych rycerzy króla Czech zeszło z koni i stało bezbronnych na placu boju, zgodnie z zasadami rycerskimi oczekując na niewolę. Ukryci na prawym skrzydle rycerze pod wodzą Ulricha von Kapellena wbili się klinem we wrogą armię. Ottokar widząc zagrożenie nakazał stojącym w rezerwie oddziałom atak. Niewielkie siły odwodowe próbowały uderzyć na tyły rycerzy Ulricha von Kapellena, atak ten został jednak odparty i zmusił atakujących do ucieczki. W tej beznadziejnej sytuacji armia króla Czech wpadła w panikę, co uniemożliwiło jej uporządkowany odwrót. Uciekający rycerze starali się przepłynąć rzekę Morawę, wielu jednak utonęło, a licznych dopadli Kumanowie. Na placu boju padło 12 000 rycerzy, w tym Ottokar, splądrowano także obóz czeski.
Bitwa pod Suchymi Krutami zaliczana jest do największych bitew średniowiecznych.