Extension methods which are not part of an existing type but may be called as if they were part of the type. Extension methods enable you to "add" methods to existing types without creating a new derived type, recompiling, or otherwise modifying the original type. Extension methods are a special kind of static method, but they are called as if they were instance methods on the extended type.
The most common extension methods are the LINQ standard query operators that add query functionality to the existing System.Collections.IEnumerable and System.Collections.Generic.IEnumerable
Another area of use is in HtmlHelpers in MVC
See Extension Methods (C# Programming Guide) for a detailed discussion.