Refer to this original Post by e.James
According to Apple's NSInvocation class reference:
An NSInvocation is an Objective-C message rendered static, that is, it is an action turned into an object.
And, in a little more detail:
The concept of messages is central to the objective-c philosophy....