Salem is a city in Salem County, in the U.S. state of New Jersey. As of the 2010 United States Census, the city's population was 5,146. It is the county seat of Salem County, the state's most rural county.