C# - Rethrow exception in catch block, after return
<p>Consider the following code:</p>

<pre><code>try{
    ....

} catch(Exception) {
    return null;
    throw;
}
</code></pre>

<p>Does it make any sense?</p>

<p>Normally, if you put any codes after return, Visual Studio marks that as unreachable code, but for this case, it does not. Is there a reason for that?</p>

<p><strong>Edit</strong></p>

<p>As a complement to the question, I want to ask another one.</p>

<p>What happens if I throw the exception in the finally block, after return?</p>

<pre><code>try{
    ....

} catch(Exception) {
    return null;
} finally {
    throw new Exception();
}
</code></pre>