Esch-sur-Alzette (Letzeburgsk: Esch-Uelzecht, tysk: Esch-an-der-Alzig) er en kommune med bystatus i det sydvestlige Luxembourg, langs grænsen til Frankrig. Den ligger i kantonen Esch-sur-Alzette i distriktet Luxembourg. Byen har en befolkning på 27.146 (2005) og er landets næststørste by. Landets hovedstad, Luxembourg, ligger 15 km mod nordøst. Til daglig omtales byen blot som Esch.
Byen var i Tour de France 2006 målby for anden etape og startby for tredje etape.