Why is it controversial? The controversy came from C# vs Java and if you have programmed in both you’d know that exceptions are broken in C#. Broken because you have to catch the base Exception class if you want to avoid crashing and that’s disrecommended by all C# linting tools.