 Marengo is located in northwest Ashland County, south of the town of White River, west of the towns of Ashland and Morse, and north of the town of Gordon.To the west are the towns of Grandview and Lincoln in Bayfield County.The Brunsweiler River, a tributary of the Marengo River and thence the Bad River, flows south to north through the town, passing through several small lakes.