I cannot emphasize strongly enough how many problems this has already caused, in fact I would go as far to say that it's the *MAIN* problem for c# as a language as a whole.
Every single application I create has .dll loading problems. Every.single.one. There are no exceptions. Oh and then suddenly GAC assemblies get loaded in instead of my own and I get missing types. It is an absolute cluster*f.
In Java you just pass in all .jars you need during startup. That's it, you are done. There is no possibility for errors what so ever.