El municipio de Puebla está situado en el noroeste de la provincia de
Zamora, en la comarca natural de Sanabria. El término municipal incluye las localidades de Puebla, Castellanos, Robledo y
Ungilde. El municipio, que tiene una superficie de 81,39 km², cuenta según el padrón municipal para 2018 del INE con 1409 habitantes y una densidad de 17,59 hab./km². Destaca el notable nivel de conservación de su patrimonio paisajístico y medioambiental, de características similares a las del cercano espacio natural protegido del
parque natural del
Lago de Sanabria.