That is just the naming convention for an Interface in the .NET Framework.
Some of the most common ones (at least that I have used, but how often which
ones are used can depend on whether you do web or desktop development and
whether you are writing applications or creating control libraries) are
IPostBackDataHandler, which is used to handle form data in web custom
controls and ICallbackEventHandler, which is used for client callbacks. But
these are just a few of the many Interfaces in the framework, for a complete
list you will need to look at the documentation. But I also want to mention
that many of the Interfaces are used more by classes already in the
framework than by developers. For example, Validators (such as
RequiredFieldValidator, RegularExpressionValidator, etc.) are of type
IValidator, but when creating a custom Validator you inherit from the
BaseValidator class (which implements IValidator) rather than implement the
IValidator Interface for every custom Validator. Hopefully this can get you
started, and obviously you can always find more information in the
documentation.