Yes, you are right. In C++ and C++/CLI, you can write a simple program inside of the main function. However, C# requires you write your simple program inside of a class inside of a static method. Thus, a new programmer has to contend with OOP at the start before learning about the fundamentals such as variable scope and iteration. When you add the GUI in the picture, you are dropping a lot of learning overhead that overwhelms many new programmers. Thus, they may miss learning what they really need to be solid programmers. In a nutshell, keep it simple and build on a solid base. Fancy GUI programming can be learned later with the fundamentals under their belts.
"We make a living by what we get, we make a life by what we give." --Winston Churchill