Why DotNetBrowser


Professional Support

Your questions are promptly handled by the development team.

Quick Start

Explicit API and Docs

Easy-to-use API, Quick Start Guides, and extensive Documentation

Best Choice

Best Technology Choice

Is based on a WebKit successor, Chromium browser. Can display modern content built with HTML5, CSS3, JavaScript, Silverlight® and other web technologies.

  • Visual Studio Partner

Simple Integration

DotNetBrowser Full Screen


using System.Windows.Forms;
using DotNetBrowser;
using DotNetBrowser.WinForms;

namespace WinForms.DotNetBrowser
    public partial class Form1 : Form
        public Form1()

            BrowserView browserView = new WinFormsBrowserView();
            Controls.Add((Control) browserView);

Visual Basic .NET

Imports DotNetBrowser
Imports DotNetBrowser.WinForms

Namespace WinForms.DotNetBrowser

    Public Class Form1

        Public Sub New()

            Dim browserView = New WinFormsBrowserView()    
        End Sub
    End Class
End Namespace


<Window x:Class="WPF.DotNetBrowser.MainWindow"
        Title="MainWindow" Height="350" Width="525">
    <Grid Name="mainLayout">


See another example for working with XAML

C# .NET MainWindow.xaml.cs

using DotNetBrowser;
using DotNetBrowser.WPF;

namespace WPF.DotNetBrowser
    public partial class MainWindow : Window
        BrowserView webView;

        public MainWindow()

            webView = new WPFBrowserView(BrowserFactory.Create());

Visual Basic .NET MainWindow.xaml.vb

Imports DotNetBrowser
Imports DotNetBrowser.WPF

Namespace WPF.DotNetBrowser

    Class MainWindow
        Private webView As BrowserView

        Public Sub New()


            webView = New WPFBrowserView(BrowserFactory.Create())   

        End Sub
    End Class
End Namespace


WPF / WinForms Control

DotNetBrowser provides .NET WPF / WinForms Control that can be embedded into .NET Applications to display HTML content including modern web pages. Learn more.

Multi-Process Architecture

DotNetBrowser inherits Chromium Multi-Process Architecture. It means that every web page is rendered in separate Chromium Render process. Actually all native functionality is running in separate native processes. It means that Chromium will not use memory of your .NET application.

Load Handler

With LoadHandler you can handle any load activity including filtering all URLs loaded in Browser component. See example.

Bidirectional JavaScript to .NET Bridge

You can execute JavaScript code on the loaded web page and return the result of execution to the .NET side. You can register new JavaScript functions and associate them with .NET methods. Every time JavaScript invokes this function an appropriate .NET method will be applied. Learn more.

SSL Certificate Dialogs

DotNetBrowser API allows handling SSL X.509 Client Certificates. See example.

DOM Access

DOM API provides functionality that can be used for accessing and modifying DOM, finding particular nodes, modifying their attributes and contents, listening to DOM events and even more – all without the need to use JavaScript. Learn more.

Display Web Accurately

Web page is rendered by Chromium engine. Because of this web pages will look exactly as in Google Chrome.

Browser Events Listeners

You can listen to different web browser events such as start loading frame, finish loading frame, fail loading frame, document loaded in main frame, title and status change events etc. See example.

Resource Handler

With ResourceHandler you can handle process of loading resources such as HTML, images, JavaScript, etc. See example.

Popups Handler

All popup windows can be handled with PopupHandler. You decide whether popup window should be displayed or not and how exactly it should be displayed (e.g. in a separate window, in your application tab etc.). Learn more.

Plugin Manager

Using PluginManager API you can get information about all available plugins and enable/disable them. Learn more.

HTML to Image

Take a screenshot, and even capture an image of the complete web page. See example.

Geolocation and Google API support

Use Google Maps Geolocation API and work with Google Maps. See example.

Printing API

Customize the printing of the loaded web pages from both JS and .NET. Learn more.

HTML5, CSS3, JavaScript Support

DotNetBrowser supports all the modern web standards including HTML5, CSS3 and JavaScript. In general it supports the same web standards as Google Chrome.

JavaScript Dialogs Handler

The JavaScript dialogs such as alert, confirmation, prompt, beforeunload, file upload dialog can be handled using DialogHandler. You can choose whether a JavaScript dialog should be displayed or not and what the dialog should look like. See example.

Save Web Page

The Browser.SaveWebPage() allows you to save the loaded web page as a set of files. See example.

Console Listener

Using the ConsoleMessageEvent you can listen to console messages with different levels such as DEBUG, LOG, WARNING or ERROR, to get notifications about JavaScript errors on the loaded web page. See example.

Modify User Agent

With DotNetBrowser you can modify browser’s User-Agent string that will be sent to a web server. See example.

XPath Support

Evaluate XPath expressions in scope of the whole document or a specific node. See example.

HTML5 Desktop Notifications

NotificationHandler allows you to tackle the situation when web page wants to display desktop notifications. You decide whether the web page is allowed to display notifications or not. Learn more.

Getting Help

Contact Support

During your active support subscription you can submit and track requests related to your project in DotNetBrowser Help Center.

Ask a Question

Check the questions with #dotnetbrowser tag on Stack Overflow to see how other developers solved the tasks you are facing.

Follow @DotNetBrowser on Twitter for the latest product news.

Evaluation SupportProvided for 30 days

Support Evaluation

Standard SupportProvided for one year with 25% discount for renewal

Support Standard

Premium SupportContract-based time and materials service

Support Premium
Help with the product use Help with the product use Help with the product use
Response within one business day Response within one business day Response within one business day
Provided by email Provided by email Provided by email
Product updates Product updates
Phone, chat and remote desktop
Feature development
Priority issue resolution
Evaluate for Free Request Renewal Request Premium

Licensing and Pricing

Product license agreement  ∙  LGPL compliance

DotNetBrowser is using Webkit and FFmpeg components, supplied under LGPL.

  • Perpetual Licence Perpetual license
  • Free Distribution Free distribution within your application
  • Support Updates 1 year Support and updates
  • 25% Discount Support renewal with 25% discount
  • 15% Discount 15% discount on TeamDev products

Per Developer $1,199

  • Developer 1 developer
  • Unlimited Projects Unlimited projects
  • Support 55 hours of support for 1 year
Buy Now

Project $3,549

  • Developers Unlimited developers
  • Project 1 project
  • Support 75 hours of support for 1 year
Request License

Company-wide $10,799

  • Developers Unlimited developers
  • Unlimited Projects Unlimited projects
  • Support 500 hours of support for 1 year
Request License

Source Code For 1 Developer

Developers License for more developers
is also available for purchase

The prices on this page are exclusive of any taxes.

Frequently Asked Questions

Technical Questions

No, all required Chromium binaries are deployed with DotNetBrowser library. You don’t need to install Google Chrome to work with DotNetBrowser.

The library uses Chromium 69.0.3497.12.

You can find a lot of examples inside Examples directory of DotNetBrowser distribution package.

Licensing Questions

Major and minor version upgrades issued during your active Standard Support subscription period are free of charge. Upon expiration of the Standard Support subscription you can renew it with a 25% discount from the actual license price.

You only need to purchase 2 licenses. We license our library by the number of people who write code using our library.

You can distribute unlimited number of copies of your product with our library enclosed.

You may want to purchase a Project License, which is cost-effective in case there are 3 and more developers on the team. The Project License is bound to a single project you do, but it allows any number of developers in your company to work with our library.

Project License is bound to your project via the fully qualified type name of any project-specific class. For additional information on binding, please take a look at the following article.

When we say “project” we have in mind one product of your company including your future product versions or potential derivative works based on your product.

The Project License is tied to one project only.

The best solution would be to purchase the Company–wide License, which covers any number developers and projects in one company.

When you purchase a commercial license, you will get an archive with two licenсe files — Development/teamdev.licenses and Runtime/teamdev.licenses. License inside the Development folder is intended for development of your applications, while the license inside the Runtime folder is to be used for distribution of your software with DotNetBrowser enclosed.

Yes, you can purchase DotNetBrowser Source Code License; it is provided on a per developer basis. Please contact our sales team if you are interested in this option.

Chromium code is mainly provided under a permissive BSD license, however, some components it includes are supplied under different licenses. We have reviewed the licenses for all components included in DotNetBrowser and referenced them here. There are no requirements to disclose your proprietary code.

Thank you!

Start your free trial in few simple steps


Check Your Email

Links to download your evaluation license and distribution archive will arrive at your inbox in a few minutes.

If the message gets lost in your mailbox, try searching for an email from DotNetBrowser Evaluation Support with “Your Free 30 Days Trial” subject.


Install the License

To start using DotNetBrowser

  • download your evaluation license,
  • download and extract the distribution archive,
  • include the license into your project as an embedded resource. See the instruction

Get Started

Use these guides to get DotNetBrowser up and running in no time:

Quick Start Guide WPF

Quick Start Guide WinForms


Check out the ready-made examples for instructions and ideas on what you can do with your newly gotten DotNetBrowser.


With this license you will be able to evaluate our product for 30 days.
The evaluation license will not work after this time, so you will need to purchase the license.

Technologies and Platforms
Please list other technologies, it may help in support.
  • I have read and agree to the terms of the product license agreement.
  • We collect your personal information to identify you as our customer and provide you with our products and services.
    Check out our privacy statement.

    I agree to processing of my personal information.
  • We would like to send you information on upgrades and offers whenever we feel the new version or product is useful for your development.
    You can unsubscribe from emailing at any time.

    I agree to receive suggestions for products upgrades and offers.