W tym samym czasie lansjerzy polscy i dragoni Milhauda, wspierani przez szaserów i huzarów Beauregarda, ruszyli w stronę odsłoniętego prawego skrzydła Hiszpanów. Ukryci za gajem oliwnym, pojawili się niespodziewanie przed liniami Freire'go. Uderzyli i wkrótce znieśli hiszpańską konnicę ze szczętem. Następnie dokonali zwrotu i natarli na nieosłonięte skrzydło piechoty Lacy'ego. Soult nakazał piechocie walne natarcie, a baterie francuskie podjęły zmasowany ostrzał.

Mając do czynienia z natarciem piechoty od czoła, przy jednoczesnym uderzeniu kawalerii z flanki, hiszpańskie dywizje zaczęły się najpierw cofać, a potem rozpadać. Wyczuwając moment załamania w hiszpańskich szeregach, pułki rezerwy Dessollesa przeszły przez parów i wdarły się do miasteczka Ocaña, uderzając na jeszcze nie tknięte hiszpańskie lewe skrzydło. W tej sytuacji cała armia hiszpańska rzuciła się do ucieczki. W odwrocie osłaniała ją nie biorąca dotąd udziału w boju dywizja Zayasa, ale i ona do wieczora została rozbita przez idącą w trop kawalerię polską i francuską.