using System.Threading.Tasks;
public static void Main()
Console.WriteLine("Cursor Moved to Next Line Without Waiting for MyMethodAsync() completion");
Console.WriteLine("Now Waiting for Task to be Finished");
Console.WriteLine("Exiting CommandLine");
public static async Task MyMethodAsync()
Task<int> longRunningTask = LongRunningOperation();
Console.WriteLine("Independent Works of now executes in MyMethodAsync()");
int result = await longRunningTask;
Console.WriteLine("Result of LongRunningOperation() is " + result);
public static async Task<int> LongRunningOperation()
Console.WriteLine("LongRunningOperation() Started");
Console.WriteLine("LongRunningOperation() Finished after 2 Seconds");