De speurtocht naar een verdwenen vrouw leidt naar een nazi-aborteur en een grote cover-up.
De stad van schimmen speelt zich af in Dublin, Wicklow en de Vrijstad Danzig halverwege de jaren dertig. De plot draait om de verdwijning van Susan Field, een jonge Joodse vrouw. Haar beste vriendin Hannah Rosen, die in Palestina woont, keert terug naar Ierland om naar haar te zoeken. Het spoor leidt naar een illegale abortuskliniek. Wanneer Hannah daar een kijkje gaat nemen, wordt zij samen met de arts en de verpleegster die ze daar treft, gearresteerd door rechercheur Stefan Gillespie. De arts en de verpleegster worden echter onmiddellijk weer vrijgelaten en daardoor lijkt het of de Special Branch van de politie in Dublin een aborteur in bescherming neemt en vrijuit laat gaan. Als Stefans leidinggevende de zaak ook nog seponeert, besluit hij deze eigenaardige kwestie zelf te onderzoeken.
Dat het om meer gaat dan een vermist persoon blijkt wanneer de lichamen van een man en vrouw worden gevonden in de bergen onder Dublin. Stefan en Hannah bundelen hun krachten om de waarheid te achterhalen en ze volgen een spoor door Europa naar de Vrijstad Danzig.