CRR0033 - The void async method should be in a try/catch block

This analyzer detects asynchronous methods that returns nothing and does not catch the inner exceptions.

async void DemoMethodAsync(CancellationToken token) {
    await Task.Run(() => { DemoMethodSync(); }, token).ConfigureAwait(false);
}

The shown code can cause the app to crash because the exceptions thrown within a void async method cannot be caught from the outside — you should always catch them inside the method.

async void DemoMethodAsync(CancellationToken token) {
    try {
        await Task.Run(() => { DemoMethodSync(); }, token).ConfigureAwait(false);
    } catch(Exception ex) {
        Console.WriteLine(ex);
    }
}