Blain is a borough in Perry County, Pennsylvania, United States. The population was 252 at the 2000 census. It is part of the Harrisburg–Carlisle Metropolitan Statistical Area.
Blain is located at 40°20′14″N 77°30′38″W / 40.33722°N 77.51056°W / 40.33722; -77.51056 (40.337233, -77.510525).
According to the United States Census Bureau, the borough has a total area of 0.3 square miles (0.9 km²), all of it land.