+8  A: 

C# source code can't contain names starting with <>. But CLR names have more freedom, so compilers (like the C# compiler and PostSharp) can generate such names. This is very useful because it ensures that the compiler-generated names will never clash with the names you use in your source code. You'll also see them generated by the C# compiler itself, e.g. for anonymous types or for the backing fields of auto properties.

itowlson
+1, but I think you mean IL, not CLR. The `<>` is created by the compiler for anonymous classes.
Rex M
@itowson: I will use this opportunity to create an abusive dynamic type name. ;)
Sung Meister