У Вас здесь несколько ошибок.
Во первых, Вы в сигнатуре метода
Run()
указали, что он возвращает объект типа
Task,
но return не сделали. Если Вы хотите, чтобы он возвращал таску, то ее надо создать
var task = new Task(() => async
{
Console.WriteLine("Hello from begining \"Run\" method");
int num = 1000000000;
long res = await new TaskFactory().StartNew(() => { return SumZeroToNum(num); });
Console.WriteLine($"Result: {res}");
});
а потом вернуть
return task;
Но сделав в методе Main Run(), Вы только получите объет задачи, автоматом он у Вас не выполнится. Для этого Вам нужно будет сделать t.Start();
Если хотите, чтоб вызывать метод можно было через async, то внутри надо сделать так
return Task.Run(() =>
{
....
})
Тогда запустить его можно будет асинхронно
await Run();
Или синхронно
Run().Result;