explorer is just the UI of windows. think of linux winning with No UI. the explorer shell just translates commands to commandline for you. the kernel does most of the app handling work.
Not quite, unless by "UI" you mean the graphical shell. The UI and windowing code and such are handled by the Win32 subsystem and the related libraries which take care of UI rendering and stuff. Similarly, the "commandline" never steps into the picture. When you click icons on your desktop, the shell requests application startup from the system libraries, most likely using ShellExecuteEx() api from shell32.dll, which figures out how the request should be handled. That api then manages opening the program associated with the file you clicked, by requesting CreateProcess() which is implemented in kernel32.dll. This isn't the "kernel", though, kernel32.dll is just a system library for passing on requests to the Win32 subsystem, and as of such it ends up sending request to CSRSS (you've seen that in your task list, right?) which asks the actual kernel to create the process and blahblahblah.
It's a little bit tough to decide where to draw the line between being specific and oversimplifying, but mixing the two will only end up messy. You'll spew irrelevant and even wrong details, heck, I might've done too. I'd have to disassemble the libraries I mentioned to see if the execution flow really goes the way I said it would.
Either way, neither Explorer.exe nor IExplore.exe do very much, and out of those IExplore.exe does nearly nothing.