Narnhac est une commune française située dans le département du Cantal, en région Auvergne-Rhône-Alpes.