La majeure partie du roman se passe au Maroc espagnol, peu de temps après la guerre du Rif (1921-1926), soit vers 1930. La région du Rif est à peu près pacifiée mais les soldats espagnols y subissent cependant quelques escarmouches.
Pierre Gilieth se retrouve à Barcelone après avoir tué un homme à Rouen (à Paris, rue Saint Vincent, dans le film de Duvivier). Il s'engage dans la légion espagnole et part pour le Maroc où un indicateur de police, Fernando Lucas, tenté par la prime, le retrouve. Pierre Gilieth soupçonne rapidement Fernando Lucas, l'épie et le fait surveiller par une prostituée, Aïscha, dont ils sont tous deux épris. Les hommes de la 4e bandera se retrouvant sous le feu de l'ennemi avec peu d'espoir d'en sortir et Lucas ayant accepté de ne plus poursuivre Gilieth, ce dernier lui offre une poignée de main. Il meurt peu après.
Lucas se retrouve à Madrid, libéré de son faux engagement de légionnaire et de son activité d'indicateur, se marie, exerce des « petits boulots » puis, lassé de sa vie monotone, se ré-engage dans la légion. Il retrouve Aïscha, devenue « très grasse et très lourde », et qui semble à peine se souvenir du passé.