You can use DotNetBrowser library to use HTML5 in .NET desktop applications.
The library provides a Chromium-based WPF component that can be embedded into your .NET application. The component supports calling JavaScript from C# and vice versa. Chromium engine will act as a HTML5 interpreter in this case.
Here's code example that demonstrates how to load HTML into the component and get HTML of the loaded web page:
using System;
using DotNetBrowser;
namespace MyNamespace
{
class Program
{
static void Main(string[] args)
{
// Provide path to the directory with DotNetBrowser Chromium binaries.
Environment.SetEnvironmentVariable("DOTNETBROWSER_BIN_DIR", @"D:\Library\Chromium");
// Create Browser instance.
Browser browser = BrowserFactory.Create();
// Register frame loading event listener.
browser.FinishLoadingFrameEvent += delegate(object sender, FinishLoadingEventArgs e)
{
// Wait until main document of the web page is loaded completely.
if (e.IsMainFrame)
{
// Get HTML of the loaded web page and write it to Console.
Console.Out.WriteLine(e.Browser.GetHTML());
}
}
// Load HTML content from string .
browser.LoadHTML("<html><body><h2>Hello World!</h2></body></html>");
// Load google.com to get its HTML content.
browser.LoadURL("http://www.google.com");
}
}
}
To find out how to configure MS Visual Studio 2013 Project with DotNetBrowser you can take a look at Quick Start Guide.
It's free for Open-Source projects ;)