The City of McGregor is located in the northeast corner of Clayton County in northeast Iowa. The Mississippi River borders the east side of McGregor with steep bluffs surrounding the rest of the community and gives McGregor its nickname “The Pocket City”.
McGregor is located on State Highway 76, which becomes McGregor's historic and well-preserved 19th century Main Street through town and connects on its north and west sides of town with U. S. Highway 18. State Highway 76 is also part of The Great River Road, a national scenic byway that stretches 326 miles through Iowa, stretching a total of 3,000 miles from Canada to the Gulf of Mexico.
McGregor is also an endpoint of the River Bluffs Scenic Byway, a 109-mile trip that winds through the bluff country in Clayton and Fayette counties, from the Mississippi River west of McGregor.
McGregor resides just south of the community of Marquette, originally established as North McGregor, and across the river from Prairie du Chien, Wisconsin. The community is near both Iowa and Wisconsin state and national park areas and many other natural resource-based recreational assets abundant in the Driftless Area.