Anonymous types provide a convenient way to encapsulate a set of read-only properties into a single object without having to first explicitly define a type.
This is an important feature for the LINQ feature that will be integrated into C#. Since anonymous types do not have a named typing, they must be stored in variables declared using the var keyword, telling the C# compiler to use type inference for the variable.