OCX are the extension of active x components where as dll are library files and siple appliction is exe exe can have OCX and dll according to its usage
Both Ocx and Dll are in process while Exe is Out process controls.Meaning Ocx and Dll will not create adifferent process while execution rather it will use the same process in which the parent application is running which could be an EXE.
Exes' create a different process while executing hence there will be delay in execution to handle inter process communication .Note OCX and DLL's donot have independent existance they should always have a parent process to execute.This is not the case with EXEs'.