DotNetBrowser is a .NET Library which allows embedding a Chromium-based control into .NET applications to display modern web pages built with HTML5, CSS3, JavaScript, etc. DotNetBrowser supports both WPF and WinForms .NET graphical subsystems and provides WPF/WinForms UI controls which you can embed into your .NET Desktop Application to display web pages.

Chromium

DotNetBrowser does not interact with existing Chrome or Chromium installations - it brings its own Chromium-based engine. All required Chromium binaries and dependencies are deployed with the library. You don’t need to install Google Chrome, Chromium or Visual C++ Redistributable to work with DotNetBrowser.

Rendering

Everything you see on the web page when you load it is rendered by the Chromium engine. DotNetBrowser just displays web page parts rendered by the Chromium engine. Chromium loads and renders web pages in separate native processes (Multi-Process Architecture). The web page looks exactly as in Google Chrome.

Multi-Process Architecture

DotNetBrowser inherits Chromium’s Multi-Process Architecture. Each web page is rendered in a separate native process (browsercore32.exe). JavaScript on the web page and plugins are executed in separate native processes as well. If an unexpected error happens in the web page’s plugin or DOM, your application will continue working. You can listen to events about an unexpected termination of Chromium process and restore the Browser component if necessary.

Memory Usage

Since all Chromium functionality runs in separate native processes, the Chromium engine doesn’t use the memory of your .NET application.