CodeProject is your friend: "Convert any URL to a MHTML archive using native .NET code" [
^]. This is an old article (2005), based on Google's MHTBuilder, but it's by Jeff Atwood, himself, co-founder of StackOverFlow.
More recently, there is the HTMLAgilityPack which many people found useful for getting whatever out of web-page; a C# library, updated Sept. 2014, is on NuGet: [
^].
There's a CodeProject article on using HTMLAgilityPack with ASP.NET: [
^].