La batalla dio comienzo sobre las 08:00 horas y finalizó alrededor de las 16:00. Fueron ocho horas de combate cuerpo a cuerpo, con cargas de caballería en las que el arrojo del general Prim consiguió arrastrar a sus hombres a la lucha en los momentos de mayor riesgo para la línea española.
Tras rebasar el campamento del Tercer Cuerpo de Ejército, Prim lanzó un primer ataque con el regimiento del Príncipe y el batallón de Cazadores de Vergara, sobre las alturas que dominan el valle de Castillejos. En las alturas les esperaban los moros, más numerosos. Sin embargo, los españoles cargaron a la bayoneta, expulsando al enemigo de las alturas. Este ataque fue apoyado por otro simultáneo realizado por el Batallón de Cuenca, que atacó más al sur, donde los rifeños mantenían un fuerte fuego de fusilería, que resultaba muy eficaz para detener el avance de las tropas españolas, logrando hacer huir a los moros de sus posiciones. Asegurada la meseta, el general Prim hizo avanzar al resto de sus tropas. Mientras, en el valle se iban congregando numerosas huestes enemigas en las inmediaciones de la casa del Morabito, al amparo de una colina y de los espesos jarales que se extendían desde los cerros de la derecha. Ante esta amenaza, el general O'Donnell ordenó a Prim que tomase la casa, mientras posicionaba la brigada del general Serrano, del Segundo Cuerpo de Ejército, reforzada con una batería de Montaña, para que flanquease un bosque cercano, ocupado por los moros y los arrojase de él. El ataque de Serrano finalizó, con éxito, en pocos momentos. Por su parte, Prim dispuso sus fuerzas para que atacaran simultáneamente, apoyados por la batería de Artillería de Montaña emplazada en la meseta recién conquistada. El Batallón de Cuenca lo hizo por la derecha, mientras los dos escuadrones de Húsares lo hacían por la izquierda; por el centro descendió el regimiento del Príncipe y los cazadores de Vergara, protegidos por el batallón de Luchana; mientras la División de Reserva llegó al valle atacando a los rifeños. Entretanto, la flotilla naval continuaba su fuego de cobertura, concentrado en el valle y en la casa del Morabito. Los batallones de Príncipe y Vergara se lanzaron al asalto, logrando coronar la altura y expulsar al enemigo de sus posiciones. Allí se encontraron con una fuerza de marineros e infantes de marina que, mandados por el capitán de fragata Lobo, habían saltado a tierra arrollando a los moros, hasta encontrarse con los soldados del general Prim. Finalizado el asalto, una vez dueños los españoles del valle de Castillejos y de la casa del Morabito, los moros se retiraron. El general Prim tomó posiciones en espera de órdenes, mientras el general O´Donnell trasladaba su puesto de mando a la casa del Morabito. Eran las 12:00.
Los moros se habían retirado, aunque para concentrar sus fuerzas, más las desperdigadas por los montes y bosques vecinos, reforzadas con la harca de Anghera. Prim, no necesitó recibir nuevas órdenes, pues de improviso vio aparecer una multitud de moros en la loma más próxima de la tres que se levantan frente al Morabito. Los rifeños se lanzaron al ataque entre gritos con el arma terciada a la espalda y blandiendo sus cortantes y afiladas gumías. Al mismo tiempo, por la cañada de la izquierda apareció la caballería mora, que cargaba tratando de llegar al llano. El general Prim, con la infantería se dispuso a contener a los que se le echaban encima, mientras lanzaba a los Húsares de la Princesa a contener a la caballería enemiga. Éstos se lanzaron a la carga, dispersando a su paso a los de a pie, ya que su objetivo era la caballería enemiga, que se puso en perseguidos por los españoles. Los escuadrones españoles, al no encontrar enemigos que se les opusieran, se lanzaron a la carga contra el campamento moro, cuando, de improviso, el suelo se hundió bajo los cascos de los caballos. Los moros habían construido tres fosos disimulados con ramas y hierbas. Mientras caen en la emboscada, una tempestad de disparos se desata sobre los jinetes españoles, que pugnan por salir de aquella carnicería. Los que lograron salir ilesos escoltaron a los heridos abriéndose paso entre los enemigos hasta regresar al valle de Castillejos. Otros, sin embargo, siguieron adelante, adentrándose en el campamento enemigo, batiéndose entre las tiendas; regresando a las posiciones españolas tras rebasar los tres fosos. Mientras tenía lugar la acción de la caballería, los batallones, Príncipe, Vergara, Luchana y Cuenca recibieron a los moros con sus disparos, capitaneados por Prim, en todo momento, así resistieron la acometida enemiga y finalmente la rechazaron. Una vez rechazado el enemigo, Prim eligió se atrincheró para pasar la noche. Adelantó al Regimiento del Príncipe a la segunda loma, desde donde los moros disparaban de nuevo, dejando al resto sobre la primera. Tras conquistar la segunda loma pudo divisar el campamento marroquí, protegido entre cuatro montes, aprestándose para el ataque. Pero O´Donnell le hizo desistir de su propósito, pues el objetivo era avanzar sobre Tetuán. Prim regresó a la posición conquistada y los Ingenieros, protegidos por los cazadores de Vergara, continuaron los trabajos de fortificación y atrincheramiento del campamento.
Los moros, amenazados por la presencia española, decidieron atacar las posiciones del general Prim, posesión necesaria para cubrir el camino de la costa. De nuevo fue una lucha sangrienta y cruel. Los moros atacaban con ímpetu a los batallones españoles, que estaban desplegados en línea dada la extensión del ataque marroquí. Mientras los del Príncipe desalojaban a los moros, Prim hizo avanzar un batallón del 5º Regimiento de Artillería, que luchaba como infantería a las órdenes del coronel don Ignacio Berrueta. La carnicería fue espantosa. Los moros caían por doquier, pero otros muchos sustituían a los caídos. La situación de los españoles era crítica, pero, a pesar de ello, los soldados se mantienen firmes sin perder un solo palmo de terreno bajo el intenso fuego enemigo. El general O'Donnell, establecido en el Morabito, hace un reconocimiento del terreno y ordena que el general García ataque desde el valle con siete batallones del Segundo Cuerpo de Ejército, mientras Prim aguante en las posiciones que había ocupado. Pero la inaccesibilidad del terreno y la posición ventajosa del enemigo impiden el ataque. Ante lo comprometido de la situación, el general O´Donnell ordenó al Regimiento de Córdoba, perteneciente al Segundo Cuerpo de Ejército, a las órdenes del brigadier Angulo, que reforzase la línea del general Prim. El refuerzo llegó en el momento más apropiado. Prim les ordenó dejar las mochilas en el suelo, dejó un batallón de Córdoba en reserva y se puso a la cabeza del otro para contener a la innumerable masa de moros que amenazaba destruir al Príncipe. Pero fue inútil, imposible dar un paso. El momento era crítico. Los moros avanzaban resueltos. El general Prim viendo lo comprometido de la situación, montado a caballo, cogió la bandera de España que enarbolaba el abanderado del Regimiento de Córdoba y, dirigiéndose a los soldados, les arengó de la siguiente manera: «Soldados podéis abandonar esas mochilas porque son vuestras, pero no podéis abandonar esta Bandera, que es de la Patria. Yo voy a meterme con ella en las filas enemigas ... ¿Permitiréis que el estandarte de España caiga en poder de los moros? ¿Dejareis morir solo a vuestro general? ¡Soldados! ... ¡Viva la Reina!» Y enarbolando la bandera se lanzó a las posiciones del enemigo. Su gesto tuvo tanta fuerza que los soldados del Córdoba se lanzaron al ataque al grito de «¡Viva nuestro general!». La carga fue tal que lograron ocupar definitivamente la posición y rechazar definitivamente al enemigo.
Ramón Martín