До Карлсхамна здесь существовала небольшая Бодекулла у устья Миеона, где жили земледельцы, рыбаки и таможенники. После Роскилльского мира 1658 года Блекинге стало шведским, и Карл X Густав увидел в защищённой глубокой бухте место для торговли и возможной военно-морской базы. В 1664 году Бодекулла получила городские права, а два года спустя стала Карлсхамном; в 1668-м были подтверждены привилегии. Первые века были трудными: город занимали датчане в 1676 и 1710 годах, а чума 1711 года унесла около половины жителей. В XVIII-XIX веках торговля и промышленность укрепили город, а гавань сохранила значение и в современную эпоху. Рядом с городом действовали верфь на Boön и укрепления на Frisholmen, нынешнем Kastellet. Старая сетка улиц и купеческие дома сохраняют память о периоде, когда морская торговля определяла городской доход и облик.