async and await in .Net Framework 4.5

Let me start with the difference between synchronous process and asynchronous process.

As the above image depicts, we usually consider asynchronous process in case of a time taking task. Making an asynchronous call, we will execute the tedious task on a separate thread and will continue with remaining process on initial thread. Thus we will be able to execute both the tasks paralelly.

Until now we have been using a standard process of calling a function or method asynchronously.
Until .Net framework 4.0 below is the typical process of executing a method asynchronously.

I created a small sample application  in Visual Studio 2013.
Before we go into more details, i would like to highlight a simple fact.

"Until .Net Framework 4.0 we call a non-asynch method asynchronously, but from .Net Framework 4.5 we have asynch methods which reduces lot of efforts in development perspective."


Query Rules - Beyond Search box in Sharepoint 2013

Developers often excited about new technology like EF6.0, C#5, Visual Studio VNext, MVC 6, Sharepoint 2013, Cloud platform. But they put the most important fact on the blind side "What features of this new technology we use?"

Don't you think that defeated the purpose of having a car instead of cart.

Whats the point of using SharePoint 2013, if we din't use any new features provided by it. Right?