By default, each process will use it's own configuration file. If you want the console application to have a configuration file you will need to add that to your project. After adding the App.config to your project whenever your project is built the App.config will be copied to the output folder as <application>.exe.config where <application> is your application name (e.g. ConsoleApplication1.exe.config). (Web.config is more complicated.)
Typically, configuration is then added to this application configuration file.
So the easiest way to configure your library assembly is to add its specific configuration to the hosting application's configuration file.
Now that can be a bit ugly. One way to make it less ugly is to have the application configuration file simply reference your config file using the ConfigSource attribute. That way you can deploy your assembly along with your config file and simply have the hosting application add a few lines to their config file to reference your config. First they have to add a reference to the configSections:
<configSections>
<section name="loggingConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.LoggingSettings, Microsoft.Practices.EnterpriseLibrary.Logging, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</configSections>
Next they need to add a reference to your config file:
<loggingConfiguration configSource="MyLoggingConfig.xml"/>
Now, maybe you don't want the users of your assembly to even know there is a configuration file. If that is the case, you could create your own standalone configuration file and open it up using ConfigurationManager.OpenMappedExeConfiguration. Here is another example on how to use OpenMappedExeConfiguration.