Overcome multithreading and asynchronous programming in C# problems & improve performance by parallel computing in C#