1. Correct - although there are other apps/viewers that will handle XLS files
2. Why not just use a standard link ? The time taken will include the time to render the file through the webserver as well.
3. Unless your server is configured so that you can map directly to the DLL and include it in all the clients then you can't do it. There is also no way that I have found to run any application on the local machine without it being installed there.
may give you some coding alternatives though.