Puffins feed on fish, squid and sand eels. They have a serrated bill and a tongue which they use to trap food against their palate thus enabling them to open their bills and catch further food. In this way they can return to their young with a bill containing many fish which is a far more effective way of feeding.
For a more in-depth guide on what puffins eat, check out this article.