Extension method — это программная конструкция, распространенная в .NET, которая добавляет вызываемое поведение к существующему классу без изменения определения класса. Он определяется извне, но вызывается так, будто является частью целевого типа.
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.