I'm of the understanding that an unhandled exception in any appdomain will bring down that appdomain. This is not unlike an unhandled exception in any standard forms- or console-based application.
If that is so, how do you indicate a failed operation when you're crossing appdomain boundaries? I'm currently logging it so that I know it happens, but the operation is one of several taking place within a method and I don't think anything short of an exception is going to interrupt that method.
To put something more concrete to this, I'm setting a string property on an object (proxy) created in another appdomain. This operation takes place in the other appdomain, but if it fails for some reason I don't want to continue with the other operations. They all take place in a single method because I need it all to happen as a single atomic operation. If any of the operations fail, the atomic operation as a whole needs to fail.
I thought about something like a "last operation status" indicator that I could check after each one, but that seems kludge. Is there a better way?