The C# 3.0 language enhancements consist of:

Anonymous types – are types which are automatically inferred and created from object initializers
Implicitly typed local variables – This permits the type of local variables to be inferred from the expressions used to initialize them.
Auto-implemented properties – This is used to automate the process of creating properties.
Implicitly typed arrays – This is used for array creation and initialization that infers the element type of the array from an array initializer.
Extension methods – This makes it possible to extend existing types and constructed types with additional methods.
Lambda expressions – an evolution of anonymous methods that concisely improves type inference and conversions to both delegate types and expression trees.
Expression trees, which permit lambda expressions to be represented as data (expression trees) instead of as code (delegates).
Object and collection initializers, which you can use to conveniently specify values for one or more fields or properties for a newly created object, combining creation and initialization into a single step.
Query expressions, which provide a language-integrated syntax for queries that is similar to relational and hierarchical query languages such as SQL and XQuery.

Leave a Reply

%d bloggers like this: