just want some advice on \"best practice\" regarding multi-threading tasks.
as an example, we have a C# application that upon startup reads data from various \"type
If you're not on .NET 4.0 then you can use a List
If you want a faster startup exprience, you probably don't need to wait for all the data to be read during startup. Just display the GUI and any information that is missing can be shown greyed out with some sort of "Updating..." icon or similar. When the information comes in, just fire an event to update the GUI. There could be many operations that the user can begin to perform even before all the data from all tables is read in.