Advice for Multi Threading - C#