La commune de Warhem fait partie du canton de Wormhout, arrondissement de Dunkerque. Elle est située entre Bergues et Hondschoote, au Sud-Est de Dunkerque. Le centre du village est à environ 10 km à vol d'oiseau de la mer.
Elle est entourée à partir du Nord et dans le sens des aiguilles d'une montre, par les communes de Téteghem, Uxem, Ghyvelde/Les Moëres, Hondschoote, Killem, Rexpoëde, West-Cappel, Quaëdypre et Hoymille.