Milnor is located in southeastern North Dakota in Sargent County about 40 miles west of Wahpeton.
The town was established in 1883 when the railroad was extended from a small town called "Linton" (not to be confused with present-day Linton) and is named for William Edward Milnor, the first telegrapher at the Milnor Station of the Northern Pacific. The buildings in "old" Linton were moved to the present town site and subsequently renamed Milnor.
The nearest recreational facilities are Tewaukon National Wildlife Refuge about 20 miles south of town and Fort Ransom State Park located about 30 miles to the northwest.