Подробное объяснение из документации
Кратко:
using
- как бы Include, но не совсем.
namespace
- как раз то, что using добавляет в текущий файл (иначе бы пришлось полные имена писать типа
Microsoft.Extensions.Hosting.IHostBuilder
). Думаю, можно считать его (namespace) аналогом папки
public class Program
- объявление публичного класса (только из-за того, что в C# пока нельзя сразу начать писать код, не объявив метод Main, а метод нельзя объявить без класса - в C#9 можно будет, но это не важно)
public static void Main(string[] args)
- Аналог из сишного
void main(int argc, char* argv[])
Раз у вас такие вопросы возникают, то рановато вы в блазор полезли