Dans les dernières parties du roman (parties II et III), Emma Bovary — épouse d'un médecin de campagne normand, Charles Bovary, et héroïne d'un romantisme fantasmé nourri de lectures sentimentales — s'est laissée entraîner dans deux liaisons successives : avec Rodolphe Boulanger, hobereau cynique, et avec Léon Dupuis, clerc de notaire. Pour entretenir le train de vie luxueux qu'elle associe à ses rêves d'amour, elle a signé des billets à ordre au marchand Lheureux, dont les créances s'accumulent à son insu.
Quand les huissiers se présentent chez les Bovary pour saisir les meubles, Emma court solliciter Rodolphe puis Léon, qui refusent tous deux de lui prêter l'argent nécessaire. Ce double abandon révèle crûment ce qu'elle avait toujours refusé de voir : ses amants ne l'ont jamais aimée à la hauteur de ses espérances. Acculée, elle se rend chez le pharmacien Homais et dérobe de l'arsenic dans le capharnaüm du laboratoire, qu'elle avale à pleines mains.
Flaubert décrit l'agonie avec une précision clinique délibérément anti-romantique : convulsions, vomissements noirs, sueurs froides. Là où la littérature sentimentale aurait offert une belle mort, le réalisme impose un corps qui se détruit dans la laideur. L'auteur écrit que la mort d'Emma ressemblait à une femme qui se débat
— la métaphore dit tout : même mourante, Emma se débat encore contre une réalité qui ne cède pas.
Charles, que le roman présente depuis le premier chapitre comme un homme ordinaire, maladroit et sincèrement amoureux, survit quelques mois à Emma. Il découvre peu à peu ses dettes, ses mensonges, ses lettres d'amour, et cette révélation achève de le détruire. Il meurt seul dans son jardin, sans cause médicale précise — de chagrin, pourrait-on dire, ou plutôt d'une vérité qu'il ne pouvait pas porter. Leur fille, la petite Berthe, est alors confiée à une grand-mère qui meurt à son tour, puis à une tante pauvre qui l'envoie travailler dans une filature de coton. Cette chute sociale de l'enfant innocente clôt le roman sur une note de désolation sans appel.
La mort d'Emma n'est pas une punition morale au sens traditionnel du terme : Flaubert ne condamne pas son héroïne, il diagnostique une société. Plusieurs niveaux de lecture se superposent.
Le roman se clôt non sur le destin de Berthe, mais sur la mention que Homais — incarnation de la bêtise satisfaite et du conformisme bourgeois — vient de recevoir la Légion d'honneur. Ce choix de clôture est une provocation calculée : Flaubert refuse la consolation et l'ordre moral. La société qui a tué Emma par son étroitesse continue de prospérer, récompensant ses médiocrités. C'est peut-être la phrase la plus amère du roman réaliste français.