In .NET, when an exception occurs, an object is created to represent the problem. It’s called, no surprise here, Exception. When your program throws an exception, .NET generates an Exception object.
Exceptions are all about helping you find and fix situations where your code behaves in ways you didn’t expect.
In C#, you can basically say, “Try this code, and if an exception occurs, catch it with this other bit of code.”