C# 6.0 introduces several new features including auto-properties with initializers that allow properties to be initialized without requiring a backing field, string interpolation for easier string formatting, a null conditional operator that short-circuits null checks, expression-bodied functions for more concise single-line methods, index initializers for initializing dictionaries during construction, exception filters for filtering exceptions based on their content, and the ability to await in catch and finally blocks. These features aim to reduce code verbosity and make C# code more readable and maintainable.