This paper introduces a novel method for single and simultaneous fault location in distribution networks by means of a sparse representation (SR) vector, Fuzzy-clustering, and machinelearning. The method requires few smart meters along the primary feeders to measure the pre-and during-fault voltages. The voltage sag values for the measured buses produce a vector whose dimension is less than the number of buses in the system. By concatenating the corresponding rows of the bus impedance matrix, an underdetermined set of equation is formed and is used to recover the fault current vector. Since the current vector ideally contains few nonzero values corresponding to fault currents at the faulted points, it is a sparse vector which can be determined by -norm minimization. Because the number of nonzero values in the estimated current vector often exceeds the number of fault points, we analyze the nonzero values by Fuzzy-c mean to estimate four possible faults. Furthermore, the nonzero values are processed by a new machine learning method based on the k-nearest neighborhood technique to estimate a single fault location. The performance of our algorithms is validated by their implementation on a real distribution network with noisy and noise-free measurement.Index Terms-Compressive sensing, distribution networks, fault location, Fuzzy-c mean, k-nearest neighborhood, and stable -norm minimization, smart meters.