Balsthal es una comuna suiza del cantón de Soleura, capital del distrito de Thal.