There are some cases that we want to extend .NET built-in objects like the String, Dictionary, and DateTime to centralize object's reusable methods. This feature is now available in .NET 3.5 through Extensions.
Extension is way of adding functionality to existing object even you do not have the source code like in the case of .NET Framework. We can now write our own reusable methods and bind it to certain object in such a way that our method will appear as part of that object. [More]