Dès 1857, Flaubert songe à écrire une grande fresque antique et accumule les lectures. Ayant commencé l’écriture de Salammbô, il entreprend un voyage en Afrique du Nord pour se documenter sur place, en avril 1858. Ses notes seront publiées d’abord sous le titre : Voyage à Carthage en 1910, puis dans l’édition de la Pléiade sous le titre : Voyage en Algérie et en Tunisie. La cité de Carthage, détruite, est le cadre idéal où déployer un imaginaire puissant, tout empli de couleurs et de violences, dans le goût orientaliste de l’époque et en accord avec ses propres visions.
Pourtant l’écriture du roman est difficile : « À chaque ligne, à chaque mot, la langue me manque et l’insuffisance du vocabulaire est telle, que je suis forcé à changer les détails très souvent. J’y crèverai, mon vieux, j’y crèverai. N’importe, ça commence à m’amuser bougrement. » Dans ce second roman, il travaille ses descriptions avec toujours le même souci du détail. Le roman paraît, en novembre 1862, chez Michel Lévy frères. Le succès mondain est immédiat même si des querelles enflamment critiques et historiens. L’œuvre déroute aussi certains lecteurs de Madame Bovary. Toutefois, avec Salammbô, Flaubert confirme son statut de grand écrivain.
L'histoire
À Carthage, au IIIe siècle av. J.-C., la révolte des mercenaires, employés par la ville contre Rome lors de la première guerre punique, sert de toile de fond à l’amour violent de Mâtho, chef des mercenaires, pour Salammbô, fille du puissant général carthaginois Hamilcar et prêtresse de la déesse Tanit. Spendius, l’esclave grec que Mâtho a libéré, exhorte les mercenaires mal payés à faire le siège de la ville. Pour aider Mâtho, il l’incite à dérober le voile de Tanit qui rend invisible. Mâtho peut ainsi approcher Salammbô mais elle le repousse.
Plus tard, sous l’influence du grand prêtre, elle se livre à Mâtho puis profite de son sommeil pour s’enfuir avec le voile sacré. Par ailleurs, Hamilcar doit livrer son fils Hannibal pour apaiser la colère du dieu Moloch. Il le soustrait au sacrifice en offrant une autre victime. Finalement Mâtho est trahi par son rival Narr’Havas ; la ville de Carthage peut être ravitaillée et sauvée. Hamilcar, avec l’aide du traître, enferme les mercenaires dans le défilé de la Hache où ils mourront de faim. Mâtho supplicié par la foule, vient mourir aux pieds de Salammbô alors que Narr’Havas triomphant lui tend la coupe des fiançailles. Mais celle-ci s’effondre. « Ainsi mourut la fille d’Hamilcar pour avoir touché au manteau de Tanit. »