If you use Power BI Desktop regularly, you might notice an occasional reference to CefSharp. Unless you’re in web or application development or already familiar with Chromium, the following general information could be helpful.
You are probably familiar with the popular web browser Google Chrome. The Chrome browser is based on Chromium, an open-source project in wider use. In fact, Microsoft recently embarked on the path of switching its Edge browser to use Chromium under the hood, which just reached beta.
Chromium Embedded Framework, or CEF, is a project that allows developers to embed a Chromium browser into applications.
CefSharp is a .NET wrapper that allows developers to use CEF more easily with .NET applications like Power BI Desktop.
You might not think of Power BI Desktop as a “browser-based” tool. By using CefSharp, however, that’s how the same visuals that you view at PowerBI.com are rendered in the Desktop application. Or more explicitly, CefSharp handles the browser control while the Chromium browser actually renders the visuals.
If you look at Task Manager while Power BI Desktop is running, you’ll see several instances of the process named CefSharp.BrowserSubprocess at work under the Microsoft Power BI Desktop parent.
While hopefully not frequent, you may also occasionally see it referenced in exceptions like this while using Power BI Desktop.
Hopefully this clarifies for some readers that whenever you see CefSharp, it’s part of the underlying web browser at work in Power BI Desktop.