An extension method is a programming construct, commonly in .NET, that adds callable behavior to an existing class without modifying the class definition. It is defined externally but invoked as if it were part of the target type.
A .NET method that is part of a class but is defined outside of the class. The first parameter of an extension method is a static this reference to the class to which the extension method belongs.