Sempach liegt am südöstlichen Ende des Sempachersees im Kanton Luzern und ist eine Kleinstadt mit ländlich geprägter Umgebung. Die Gemeindegrenze verläuft entlang der beiden Arme der Aa und steigt über den Eichberg bis zum Golfplatz Sempachersee an, wo sie mit 735 Metern über Meer ihren höchsten Punkt erreicht. Neben dem Städtchen gehören auch der Weiler Kirchbühl und mehrere Häusergruppen zum Gemeindegebiet, das größtenteils aus landwirtschaftlichen Flächen besteht.
Erstmals erwähnt wird der Ort im 12. Jahrhundert, doch schon in vorrömischer Zeit war die Gegend besiedelt, wie Funde von Pfahlbauten und alemannischen Gräbern belegen. Im 13. Jahrhundert erhielt Sempach das Stadtrecht von den Habsburgern, die es als strategischen Stützpunkt entlang der Handelsroute nach Italien nutzten. Nach der Schlacht bei Sempach 1386, in der die Habsburger eine Niederlage erlitten, schloss sich die Stadt Luzern an und verlor an Bedeutung, als neue Verkehrswege es abseits liegen ließen.
Die Altstadt mit ihren wenigen Gassen und dem Luzerner Tor als Teil der ehemaligen Stadtbefestigung prägt das Bild. Das Rathaus aus dem 15. Jahrhundert beherbergt heute ein Museum zur Stadtgeschichte und zur Schlacht bei Sempach. Die spätgotische Pfarrkirche St. Stefan und der Löwenbrunnen vor dem Rathaus ergänzen das historische Ensemble. In der Gerbegasse steht eines der ältesten Holzhochstudhäuser des Kantons.