title: Neither GetAwaiter().GetResult() nor .Result worked for me but Task.Run(await ()=> nameOfMethodTobeCalled()).Result working. I didn't understand?
body: <p>In my asp.net application I was calling some async method of one my nuget package I added into my application. Now I have a sync method in which I need to call async method of .dll I added. So for that I called those method and to retrieve result I used <br><br>
      var value = myDllClient.MyMethod().GetAwaiter().GetResult(); and <br>
      var value = myDllClient.MyMethod().Result;,  <br> <br>
  But none of these worked for me but the thread went into never ending process. I never received anything 
  So I used <br> <br>
      var value = Task.Run(async ()=> await myDllClient.MyMethod()).Result;<br> <br> is surprisingly working fine.
  I don't know how is it working?
  Can anyone help me to understand this mystery?  <br> <br>Thanks in advance </p>