using System;
using System.Threading.Tasks;
public class Program
{
public static async Task<int> DoAsync(){
await Task.Delay(5000);
return 1;
}
public static int DoIt(){
Task<int> task = DoAsync();
//Here I can do work
System.Threading.Thread.Sleep(5000);
task.Wait();
System.Threading.Thread.Sleep(1000);
var ans = task.Result;
return ans;
public static void Main()
var ans = DoIt();
Console.WriteLine(ans);