Citée pour la première fois par écrit en 1247 sous le nom de Meigenberch, la ville est fondée avant 1247 par les Habsbourg et devient un bailliage en 1273 avec une dizaine de villages environnants. La ville fut presque entièrement incendiée le par les confédérés lors de la bataille de Sempach et ne retrouvera jamais son statut d'en-temps[1].
Rattaché au canton de Lucerne en 1415, la ville devient le centre administratif du bailliage commun des Freie Ämter en 1425. Elle revint au canton d'Argovie lors de la création de celui-ci, en 1798[2].