Ao depurar um aplicativo de console, o Visual Studio fica preso em um loop de relatório de exceção. Por quê?

Considere este simples aplicativo de console:

using System;

namespace Demo
{
    class Program
    {
        static void Main(string[] args)
        {
            throw new Exception();
        }
    }
}

Eu corro isso sob o depurador no Visual Studio 2010 ou no Visual Studio 2012 Beta.

Quando faço isso, naturalmente, o depurador pára na exceção. OK até agora.

Mas quando eu pressionar F5 para continuar (ou escolha Depurar | Continuar) ele pára na mesma exceção novamente. Eu tenho que parar a depuração para o programa sair. Eu esperava que o programa saísse quando eu pressionei F5.

Alguém sabe por que se comporta da maneira que faz?

[EDITAR]

Eu marquei uma resposta como resposta, mas para ver uma consequência estranha do comportamento do depurador, considere o seguinte código:

using System;

namespace Demo
{
    class Program
    {
        static void Main(string[] args)
        {
            AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException;
            throw new Exception();
        }

        static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
        {
            Console.WriteLine("Unhandled Exception.");
        }
    }
}

Execute isso sob o depurador e pressione F5 várias vezes e, em seguida, observe a saída. Você verá muitas mensagens de "Exceção não tratada", apesar de o código ter sido lançado apenas uma vez. O depurador está causando a exceção a ser lançada várias vezes! Isso é o que eu acho estranho.

questionAnswers(3)

yourAnswerToTheQuestion