Bellach es una comuna suiza del cantón de Soleura, situada en el distrito de Lebern.
Limita al norte con las comunas de Lommiswil y Oberdorf, al este con Langendorf y Soleura, al sureste con Biberist, al sur con Lüsslingen, y al oeste con Selzach.
Cuenta con una estación ferroviaria en la que efectúan parada trenes regionales.