Twin Valley is a city in Norman County, Minnesota, United States along the Wild Rice River. The population was 821 at the 2010 census.
Minnesota State Highway 32 and County Highway 31 are two of the main routes in the community. Minnesota State Highway 200 is nearby. The Agassiz Recreational Trail passes through Twin Valley.