Возник в начале 1930-х годов как пристанционный посёлок при строительстве железнодорожной магистрали Нижний Новгород - Котельнич в 3 километрах от деревни Шахунья (названа от речки Шахунки - такой узкой, что её можно перейти в один шаг). В 1920 году на месте современного города Шахунья построено несколько бараков, в 1927 году вокзал, паровозное депо, в 1930-х годах - электростанция. В 1943 году рабочий посёлок преобразован в город Шахунья.
В современном городе Шахунья действуют предприятия деревообрабатывающей промышленности, пищевой промышленности; художественная фабрика (выпускает швейные, тканые изделия и другую продукцию).
Город застраивается по генеральному плану 1966 года: геометрически правильно спланированные кварталы разделяют прямые широкие улицы с 2-5-этажными типовыми домами. Установлен обелиск в честь воинов-земляков, павших в годы Великой Отечественной войны.
Население: 10 200 (1926), 21 300 (1959), 20 300 (1979), 22 700 (1992).