I can only think the reason why they did this was to compete with python, as our scripting languages that do not require a main/Main entry point.
Personally, it just feels wrong for compiled-based languages.
I think they could improve on C# with their namespace. Rather, for example, a typical C# file looking like:-
using EFG;
namespace ABC
{
public class XYZ
{
}
}
They could just :- using EFG;
using namespace ABC;
public class XYZ
{
}
Pretty much taken from the C++ way.. but it saves on space availability.