Hello again everyone, I am trying to decide between to different designs that will accomplish the same task. And I was just wondering if it was possible (or even recommended) to do. Here's the situation via an example: - I wish to have a wrapper object that will manage a linked list of data. - I have an object that will need to call upong the Wrapper object's methods to insert, delete and manipulate data inside that linked list. - I have another object that will need to take the contents of the wrapper object's linked list and process them. - Finally I have another object that will need to take the processed linked list and send it say to a serial port. In essense, I'm assuming I can do this be either declaring 3 dlls for each of those objects plus the dll for the wrapper object with the linked list making the methods open to the outside world. Or I can declare a bunch of Tasks that could potentially be a task for each of the jobs I need done on the linked lists and execute them asynchroneously in a controlled environment. Only 2 criteria for making this decision. 1. I would like the most speed possible. 2. The most reliable possible. Which method would you recommend? Thank you again for all your help. Regards, Stephane Richard Software Developer -- Stephane Richard Software Developer [log in to unmask] Sent through GMX FreeMail - http://www.gmx.net