Halten es una comuna suiza del cantón de Soleura, ubicada en el distrito de Wasseramt.
Limita al norte con la comuna de Oekingen, al este con Hersiwil, al sur con Heinrichswil-Winistorf y Recherswil, y al oeste con Kriegstetten.