more effective c#