I stumbled upon this thread while looking for something else, and thought I'd answer your question whilst here....
To load the .NET assembly at startup, you should use a Registry Loader for pre-2012 versions, as 2012 and newer support the Autoloader mechanism.
Now, the registry loader will simply load your code (make CommandMethods and LispFunctions available, etc.), in order to invoke a method at load, we use the IExtensonApplication.Initialize() Method with an ExtensionApplication Attribute call prior to one's Namespace. This blog post should help.
ObjectARX has nothing to do with the loading of .NET assemblies.