I think unzip would be the simplest unless the plugin installer needs to do some pre or post commands before/after the installation like deleting some old stuff etc. Also, for unzip, how are people going to specify which target directory the zip file is going to unzip to? Is the .dcupdate file going to specify that with a macro like %PLUGINDIR%? Or maybe just limit themselves to unzip to the same directory as the .dcupdate file?
External EXE is also good, but then you might have different people using different installer...Inno, NSIS, MSI...., so the user-experience might not be consistent. Also, they might all show up as entries in Add/Remove Programs.