Can you explain why the exception is not caught if I do not await an async task?
问题 Starting from an issue I had on my code, I've created this simple app to recreate the problem: private async void button1_Click(object sender, EventArgs e) { Task task = Task.Run(() => { TestWork(); }); try { await task; MessageBox.Show("Exception uncaught!"); } catch (Exception) { MessageBox.Show("Exception caught!"); } } private async void button2_Click(object sender, EventArgs e) { Task task = TestWork(); try { await task; MessageBox.Show("Exception uncaught!"); } catch (Exception) {