Joint sparse recovery aims to recover a number of sparse signals having joint sparsity from multiple compressed measurements. Such a problem is finding increasing applications in wireless sensor networks (WSN) and Internet of Things (IoT) where multiple sensors collect measurements. However, existing algorithms lack both reconstruction accuracy and speed at the same time. In this study, the authors propose a joint sparse recovery algorithm, simultaneous fast matching pursuit (SFMP), which exploits some of the concepts developed for the fast matching pursuit (FMP) algorithm. SFMP achieves significant improvement in reconstruction time and speed compared to other related existing algorithms. In contrast to related algorithms, support selection is performed efficiently as the number of selected atoms is adapted from an iteration to another. Furthermore, signal estimation is performed avoiding large matrix inversion as in related algorithms. Moreover, simultaneously pruning the estimated signals, results in removing incorrectly selected ones. Due to the efficient selection strategy and the simultaneous pruning operation, the algorithm shows significant improvement in reconstruction accuracy from noisy measurements. SFMP achieves significant speed improvement over simultaneous orthogonal matching pursuit, and significant accuracy improvement over simultaneous compressive sampling matching pursuit, requiring a much smaller number of measurements.