using System.Threading.Tasks;
using System.Runtime.CompilerServices;
public static void Main()
p.RunDemo().GetAwaiter().GetResult();
public async Task RunDemo()
var sac = new SomeAwaitableClass();
Console.WriteLine(sac.Prop1);
public class SomeAwaitableClass
public string Prop1 { get; set; }
public TaskAwaiter GetAwaiter()
return Task.Run(async () =>
Prop1 = $"I am initialized now! ({DateTimeOffset.Now})";