Which you use will depend on the result you want to achieve. For example, I fetch a user's profile and and request their pics; all the interaction with the server is done in a service module that handles the API call, but the profile display is done by an activity. A profile might be requested from somewhere else, so it's appropriate for the service to use CallSubDelayed to start the profile viewer activity.
But, a user might be bored waiting for all the pics, or decide they don't like the look of what they've seen, and press Back before they've all loaded. So if it's a photo that's arrived, the service uses IsPaused to check if the activity is running; if it is, it uses CallSub to display to picture, otherwise it ignores it. If CallSubDelayed was used, the profile viewer would pop up again, which would be a bit annoying.
So, bear in mind both the difference explained by lemonisdead above and think about how your choice of one of the other might affect the experience of the user