Walsh is located along County Trunk Highway G at the intersection with Bagley Road and Twin Creek Road, at an elevation of 676 feet (206 m). It is connected by road to Rubys Corner to the east, Loomis to the west, and Porterfield to the south (via County Trunk Highway E). The town of Porterfield's town hall and fire station are located in Walsh.
The community was originally known as Rawnsville in the nineteenth century. It was named for the family of Jacob Rawn (1819–1896; surname earlier spelled Rein, Raan, or Rhyne), who settled in the area. The name was changed to Walsh on July 5, 1902. The new name honored John R. Walsh (1837–1911) of Chicago. Walsh was the founder of the Chicago National Bank, and he purchased a controlling interest in the Wisconsin & Michigan Railway in October 1900.
A post office was established in Rawnsville (later Walsh) in 1881 but discontinued in 1882. The post office was reestablished in 1902 and operated until 1928. Rawnsville was the first stop north of Bagley Junction on the Wisconsin & Michigan (W. & M.) Railway line to Iron Mountain. The rail line was built in 1894 using surplus rail from the Chicago World's Fair, which had closed in 1893. The line was used to ship logs south to the mills in Marinette and Menominee, and it also offered passenger service. In the 1920s, the railroad owner John Marsch (1869–1954) operated a gravel pit with its own narrow-gauge railroad with a saddle tank locomotive next to the W. & M. line in Walsh. Gravel from the pit was delivered to Iron Mountain and then used to build the Ford Motor Company factory in nearby Kingsford. Gravel from Walsh was also used in the construction of U.S. Route 2 in Norway, Michigan. The rail line through Walsh was discontinued in 1938, when Marsch had the tracks torn out and the rolling stock sold off.
Walsh has a Catholic church with a nearby cemetery, and there is a Lutheran church about 1 mile (1.6 km) to the west.