Actually, a lambda expression is never a closure, though it can <i>evaluate to</i> a closure.<p>Confusing lambda expressions with closures is like confusing the string &quot;new Foo()&quot; with the object it constructs.  In each case, the former is a syntactic entity, the latter an implementation construct.