Tratamento de exceção mais elegante do que vários blocos de captura? [duplicado

Esta pergunta já tem uma resposta aqui:

apturar várias exceções de uma só ve 27 respostas

sando o C #, existe uma maneira melhor de lidar com vários tipos de exceções, em vez de um monte de blocos de captura feio

Qual é a melhor prática considerada para esse tipo de situação?

Por exemplo

try
{
    // Many types of exceptions can be thrown
}
catch (CustomException ce)
{
    ...
}
catch (AnotherCustomException ace)
{
    ...
}
catch (Exception ex)
{
    ...
}

questionAnswers(8)

yourAnswerToTheQuestion