We show that the final state vector of the continuous-time consensus protocol with an arbitrary communication digraph is obtained by multiplying the eigenprojection of the Laplacian matrix of the model by the vector of initial states. Furthermore, the eigenprojection coincides with the stochastic matrix of maximum out-forests of the weighted communication digraph. These statements make the forest consensus theorem. A similar result for DeGroot’s iterative pooling model requires the Ces`aro (time-average) limit in the general case. The forest consensus theorem generalizes the well-known spanning arborescence criterion of achieving consensus. Its field of application is the analysis of consensus algorithms.