La Première Guerre mondiale, va faire de Dinant une ville « martyre » pour la seconde fois. La bataille pour la prise de la ville dure du 15 au entre l'infanterie de l'armée française et la 3 armée allemande. Pendant cette bataille, le lieutenant Charles de Gaulle recevra sa première blessure le 15 en tentant de traverser le pont et près de seront tués, leurs corps reposent dans le cimetière militaire de la citadelle. Dans l'après-midi du 21, les Français se replient sur la rive gauche qu'ils fortifient. Dans la nuit du 21 au 22, les avant gardes allemandes réinvestissent la ville abandonnée par les Français. Paniqués, plus de tentent de se réfugier dernières les lignes françaises mais, à la stupeur générale y compris celle des soldats français, le général Henry Victor Deligny leur refuse l'accès arguant que cela risque de perturber les travaux de fortification de la rive gauche. Le 23, peu avant , commence le calvaire de la population civile, l'artillerie allemande pilonne le centre de la ville avant l'ordre de l'hallali qui se transforme rapidement en curée : pillage, incendie des bâtiments encore debout, massacre sans égard à l'âge, au sexe et aux infirmités de fusillés, grenadage des habitants terrés dans leur cave, déportation de à Cassel. Incapables d'offrir une riposte, les Français se replient, en fin d'après-midi, sur Philippeville et Charleroi. Suite à ces évènements, Dinant est décorée, le , de la croix de guerre 1914-1918 et le , le ministre allemand de la Défense vient en personne à Dinant pour exprimer officiellement les regrets de son peuple aux Dinantais.