Upon further discussion it is not intended for every connection to call the ReadFile function when it's created. I was kinda afraid of this (are loacal file reads for every connection object neccessarily bad?). Instead they will have a top level Module (not class or form) firing off the overall program. The module will read the local file (through whatever method is decided upon) and fill a global variable that will be used by all forms called subsequently.
Thoughts on this?
Well.. File System I/O has always been saught at as expensive.. Path Lookups, Authorization Checks, etc...
By what you have said so far, it seems as though your settings arent going to change that frequently anyway, so reading it in once would be sufficient. The System.Configuration namespace is wonderful at those types of applications...
If you were to think on an object oriented level, you would have your object that handles data, read the config file on construction... or if you read it in at an application level, its already in memory so it would just have to be passed or referenced..