In the How Can I Expose Only a Fragment of IList<> question one of the answers had the following code snippet:
IEnumerable FilteredList() {
It is a very simple and easy way to create an enumerable for your object. The compiler creates a class that wraps your method and that implements, in this case, IEnumerable. Without the yield keyword, you'd have to create an object that implements IEnumerable.