Я не могу найти какую-либо документацию, сообщающую мне, если это произойдет или нет.
Ответ 1
С# не врожденно поддерживает хвостовую рекурсию на языке, но вот интересная статья о похожей технике, которая может помочь вам в вашем ситуация
Ответ 2
К сожалению, этого не происходит, по крайней мере, пока нет.
Я не уверен, что сам стандарт указывает что-либо о (dis), позволяющем рекурсию хвоста. Независимо от того, что .Net поддерживает хвостовую рекурсию, так что было бы хорошо, если бы это пробилось в С#.
Если вам действительно нужна рекурсия хвоста на языке .NET, рассмотрите F # в качестве альтернативы.