To be precise, what you name 'anonymous delegate' is actually an anonymous method.
Well, both lambdas and anonymous methods are just syntax sugar. The compiler will generate at least a 'normal' method for you, although sometimes (in the case of a closure) it will generate a nested class with the no-longer-anonymous method in it.