Most programmers will deal instead with objects of type IKernelLink, a higher-level interface that extends IMathLink and incorporates the assumption that the program on the other side of the link is a Mathematica kernel.
You create objects of type IMathLink via the CreateMathLink method. Again, though, most programmers will use IKernelLink instead of IMathLink.
Most IMathLink methods throw a MathLinkException if a link-related error occurs. Examples would be calling EndPacket before sending a complete expression, or calling GetFunction when an integer is waiting on the link.
For additional information about these methods, see the .NET/Link User Guide, and also the MathLink documentation in the Mathematica book. Most of these methods are substantially similar, if not identical, to their C counterparts as documented in the book.