In my opinion, what the else statement suggests is that the previous developers didn’t know their C#. A constructor always returns a constructed object or throws an exception.
In the very old times, C++ constructors could return null, so maybe the problem comes from that. This is no longer true in C++ either, at least for the default new operator.