Les trois tronçons constituant la ligne joignant Le Puy, dans le département de la Haute-Loire, à Langogne, dans le département de la Lozère (Le Puy à Brives-Charensac, Brives-Charensac à Landos, Landos à Langogne) sont déclarés d'utilité publique en mars 1879. Puis une convention de concession est passée avec la compagnie du PLM (Paris-Lyon-Méditerranée) en août 1886. L'ensemble de la ligne ouvre "à tous les trafics" 26 ans plus tard, en juillet 1912. En avril 1939, alors que l'exploitation a été cédée à la SNCF l'année précédente, la ligne ferme au trafic voyageurs sur tous les tronçons. En avril 1981, le trafic des marchandises est à son tour interrompu sur le tronçon Landos - Langogne, puis sur le tronçon Brives-Charensac - Landos en juin 1987, et enfin sur le tronçon Le Puy – Brives-Charensac en octobre 2008. Les voies elles-mêmes ont été déposées en novembre 2011, lors de la construction de la déviation de la RN 88.
Cette ligne desservait à l'origine les 10 stations (dont 9 en Haute-Loire) du Puy, de Brives-Charensac, Coubon - Volhac, Solignac-sur-Loire, Le Brignon, Costaros - Cayres, Landos, Saint-Etienne-de-Vigan, Pradelles (dernière gare sur le territoire auvergnat), et Langogne (Lozère).