¿La espera de múltiples tareas observará más que la primera excepción?

Hoy mis colegas y yo discutimos cómo manejar las excepciones en C # 5.0async métodos correctamente, y nos preguntamos si esperar múltiples tareas a la vez también observa las excepciones que el tiempo de ejecución no desenvuelve.

Considere el siguiente fragmento de código:

async Task ExceptionMethodAsync()
{
    await Task.Yield();
    throw new Exception();
}

async Task CallingMethod()
{
    try
    {
        var a = ExceptionMethodAsync();
        var b = ExceptionMethodAsync();

        await Task.WhenAll(a, b);
    }
    catch(Exception ex)
    {
        // Catches the "first" exception thrown (whatever "first" means)

    }
}

¿Qué pasa con la segunda tarea ahora? Ambos estarán en estado de falla, pero ¿la excepción de la segunda tarea ahora se observa o no se observa?

Respuestas a la pregunta(1)

Su respuesta a la pregunta