the API being via DLL has nothing to do with having to download files to have it run. It also has absolutely nothing to do with .NET. That is a totally different issue. As for Java, you do have to have tons of stuff installed - the Java VM.
Either way, merits of Java, .NET, XML, or DLL is...