Let's see, you could create an HTML file based on your string using the IO class, which would take it and transform it into a file, and write it in the same location as your application. Then I just opened it using:
System.Diagnostics.Process.Start (" link ");
And only. I've done this many times.
Let's see, I realized that you did not quite understand what I mean, so I'll demonstrate with this pseudocode:
string suaString = "<!DOCTYPE html><html>...</html>";
StreamWriter escritor = new StreamWriter(@"...\paginaQueDesejo.html");
escritor.WriteLine(suaString);
escritor.Close();
// Pronto, sua pagina foi criada e está pronta para ser exibida, agora é só exibí-la.
System.Diagnostics.Process.Start(@"...\paginaQueDesejo.html");
Only this, I do not know if this will solve your problem, but in most cases this is a simple and efficient solution.