If Then seems to have the most flexibility. We use it the most, because If Object doesn't always allow for the comparison we need to use.
In my attached example, we used If Then and Else to first see if the message box was there, then check for the actual message to see if it was the one we were expecting.
You might not always have an Else condition, so you can use If Then alone, but if you need something specific to happen when the If condition is false, use Else to cover that.