When I started developing my first Blazor WebAssembly apps, debugging did not work. I didn't spend much time on it and added some extra Console.WriteLine to my code to debug the oldskool way.

But it didn't feel right. Blazor is Microsoft tech, Microsoft always makes sure developers have a nice development experience, including debugging. I've been able to debug all my Microsoft apps on different tech stacks, from Windows Phone simulators, devices and remote debugging Windows 8 apps, Silverlight apps in the browser and even debug right into web apps running on Azure.

So debugging a Blazor WebAssembly app in Visual Studio should be possible right? There were two things blocking my debug experience:

  1. Visual Studio requires the Enable JavaScript debugging for ASP.NET
    (Chrome, Edge and IE) option in Tools > Options > Debugging > General. This is the default setting for Visual Studio. If debugging isn't working, confirm that the option is selected.

  2. Brave browser
    I'm still unable to debug in the Brave browser, but selecting Chrome or Microsoft Edge in Visual Studio as the selected browser solves this issue.

I'm now able to debug my Blazor WebAssembly app in Visual Studio, step through code etc.