Fin 1918, les Allemands abandonnent Marville après l'avoir piégé en y cachant une bombe. Un soldat britannique, Charles Plumpick (Alan Bates), est chargé de localiser la machine infernale et de la désamorcer avant qu'elle n'explose. Sur place, il découvre une cité bien évidemment désertée par ses habitants, à l'exception des pensionnaires de l'asile d'aliénés. Ceux-ci l'accueillent à bras ouverts ; ils reconnaissent en lui - par un rocambolesque concours de circonstances - leur roi («roi de cœur», cousin du «duc de Trèfle»). Intronisé comme il se doit lors d'une cérémonie officielle à la cathédrale de la ville, Plumpick se laisse séduire par ses nouveaux compagnons, qui ont pour noms, le duc de Trèfle (Jean-Claude Brialy) précédemment cité, la duchesse (Françoise Christophe) et leurs enfants, le Général Géranium (Pierre Brasseur), l'évêque, Monseigneur Marguerite (Julien Guiomar), ou monsieur Marcel, le coiffeur, (Michel Serrault) mais aussi la tenancière de la maison close, madame Eglantine (Micheline Presle) et l'une de ses pensionnaires, la jolie Coquelicot (Geneviève Bujold). Il n'en oublie pas sa mission pour autant.