1. It prevents usage of undefined variables
2. It speeds up your code and development time. I.e. is you mis-type a variable name i.e. tabel instead of table ASP will just create a new blank variable called tabel. Which will confuse you because you would think that table has no value - and it has. With Option Explicit turned on when ASP see's the tabel variable it will throw an error because it is not defined. You can then just rewrite the variable name and you don't have to bother with any diagnostics.
3. Yes, ASP can. Take a look at Microsofts XML HTTP component