Title. This appears to be an issue in v5 as well.
async System.Threading.Tasks.Task Main()
throw new Exception();
I think Visual Studio is also the case.
I feel like I saw this discussed somewhere before, I just can't remember whether it was in SO or here.
This is tricky to fix, because it's not easy to determine that the exception is "unhandled" when it's actually being handled by the async state machine. The "Break when exception is thrown" should work correctly, though.