A central problem in ecology is determining the processes that shape the complex networks known as food webs formed by species and their feeding relationships. The topology of these networks is a major determinant of ecosystems' dynamics and is ultimately responsible for their responses to human impacts. Several simple models have been proposed for the intricate food webs observed in nature. We show that the three main models proposed so far fail to fully replicate the empirical data, and we develop a likelihood-based approach for the direct comparison of alternative models based on the full structure of the network. Results drive a new model that is able to generate all the empirical data sets and to do so with the highest likelihood.