Horní Benešov leží na Severní Moravě, východně od města Bruntál. Městem prochází silnice spojující města Bruntál a Opavu. Horní Benešov se rozkládá v malebném údolí pod vrcholky kopců Nízkého Jeseníku. Městečko je obklopeno zalesněnými stráněmi kopců. Nejvýše položeným místem nad městečkem je západním směrem vrchol kopce Dlouhý vrch ( 694 m.n.m.).