CefSharp lets you embed Chromium in .NET apps. It is a lightweight .NET wrapper around the Chromium Embedded Framework (CEF) by Marshall A. Greenblatt. About 30% of the bindings are written in C++/CLI with the majority of code here is C#. It can be used from C# or VB, or any other CLR language. CefSharp provides both WPF and WinForms web browser control implementations.
CefSharp is BSD licensed, so it can be used in both proprietary and free/open source applications. For the full details, see the LICENSE file.
If you like and use CefSharp please consider signing up for a small monthly donation, even $25 can help tremendously. See Financial Support for more details.
Stable binaries are released on NuGet, and contain everything you need to embed Chromium in your .Net/CLR application. For usage see the Quick Start guide or FAQ #8.
- See the CefSharp.Wpf.Example or CefSharp.WinForms.Example projects for example web browsers built with CefSharp. They demo most of the available features.
- See the CefSharp.MinimalExample project for a basic demo of using the CefSharp NuGet packages.
- See the General Usage Guide in help getting started/dealing with common scenarios.
- See the Wiki for work-in-progress documentation
- See the FAQ for help with common issues
- Upgrading from an earlier version of CefSharp? See the ChangeLog for breaking changes and upgrade tips.
- CefSharp API generated from the source code comments.
If you have a very simple question please start by asking it on . Please keep the
Issue Tracker for Bugs only please! Before submitting a
PR please read CONTRIBUTING
Stackoverflow is generally where questions should be asked, please search before posting, thanks!
Branches & Forks
This is the
official CefSharp fork, as maintained by the CefSharp community. You can also view the entire network of public forks/branches.
Development is done in the
master branch. New features are preferably added in feature branches, if the changes are more than trivial. New
PR's should be targeted against
When a new release is imminent a
release branch is created. We try to avoid making public facing
API changes in
release branches (Adding new features is fine, just not breaking changes).
Every commit on
master produces a
Nuget package. Use at your own risk!
With each release a new branch is created, for example the
79.1.360 release corresponds to the
cefsharp/79 branch. If you're new to
CefSharp and are downloading the source to check it out, please use a Release branch
|Branch||CEF Version||VC++ Version||.Net Version||Status|
To continue developing/supporting the project I (@amaitland) am asking for financial contributions. Donations of any size are greatly appreciated!
Recurring contributions can be made through GitHub Sponsors it only takes a GitHub account and a credit card. Currently GitHub is doubling(!) all pledges so is very much the preferred method of donation. I can also take contributions through PayPal.
Now that I (@amaitland) am a stay at home dad your contributions are the only reason I'm allowed to continue working on the project. Without continued funding the time I currently spend on the project will have to be put into finding other paid work.
- CefGlue: An alternative .NET CEF wrapper built using P/Invoke.
- ChromiumFx : Another P/Invoke .Net CEF wrapper
- CEF Bitbucket Project : The official CEF issue tracker
- CEF Forum : The official CEF Forum
- CEF API Docs : Well worth a read if you are implementing a new feature
- CefSharp API Doc
Projects using CefSharp
- HtmlView : Visual Studio extension bringing CefSharp for showing HTML pages inside VS.
- SharpBrowser : The fastest web browser for C# with tabbed browsing and HTML5/CSS3.