Penalva do Castelo (Portuguese pronunciation: [pɨˈnaɫvɐ ðu kɐʃˈtɛlu]) is a municipality in the district Viseu in Portugal. The population in 2011 was 7,956, in an area of 134.34 km².
The present mayor is Leonídio Gomes Monteiro, elected by a coalition between the Social Democratic Party and the People's Party. The municipal holiday is August 25.
Administratively, the municipality is divided into 11 civil parishes (freguesias):
- Antas e Matela
- Castelo de Penalva
Casa de Ínsua, Penalva do Castelo
- Vila Cova do Covelo e Mareco