Летоисчисление Андреаполя принято вести от 1489 года, именно тогда впервые в Литовской метрике был упомянут волостной центр Дубна (Торопецкий уезд). В XVIII-XX веках на месте нынешнего города проходила граница между Тверской и Псковской губерниями. Левая часть берега Западной Двины, вокруг села Мачихино, принадлежала генерал-лейтенанту Андрею Кушелеву. Его имение называлось Андреяно Поле. В начале XIX века Кушелев открыл здесь один из первых в Российской империи курорт, который назывался «Андреапольские минеральные воды».
Когда в начале XX века здесь появилась железная дорога, начал образовываться пристанционный поселок, который так и назвали Андреяполь. Правда, с годами название трансформировалось в современный Андреаполь.
В 1928 году соседнее Село Дубна было объединено с Андреаполем, после чего Андреаполь стал центром Ленинского района. В годы Великой Отечественной войны поселок был полностью разрушен, а позднее восстановлен, поэтому двоенных построек в городе в почти не осталось. Статус города Андреаполь получил только в 1967 году.
В прежние времена в городе успешно функционировали лесхоз и леспромхоз, но в связи с банкротством предприятия прекратили свое существование. В нынешнее время экономика Андреаполя находится в упадке. В городе работает фарфоровый завод, а лесообрабатывающая промышленность района и города представлена только индивидуальными предпринимателями.