SharpKML is an implementation of the Open Geospatial Consortium (OGC) KML 2.2 standard developed in C#, able to read/write both KML files and KMZ files.
The library has been based on Google's C++ implementation of the standard (libkml), however, instead of using the SWIG bindings the code has been written from scratch to give a more C# feel, by using properties, extension methods and the built in XML handling of the .NET framework.
The easiest way to use the library is to install the SharpKml.Core NuGet package, however, you can also download the binaries/source code from this project page.
Check out the Getting Started page for some useful documentation.