A: 

http://stackoverflow.com/questions/23250/when-do-you-use-the-this-keyword

SwDevMan81
Please vote to close rather than posting the dupe link as an answer. Thanks!
Jon B
@Jon B - I <3 Rep. Besides, people with more Rep/should know even better than me still answer these questions and get Rep for it....
SwDevMan81
@SwDevMan81: Often the duplicate is deleted, in which case the reputation earned is lost again.
Mark Byers
@Mark Byers - For serious? Good to know.
SwDevMan81
@SwDevMan81: And don't worry - I won't actually get any reputation for my answer anyway as I have already passed the reputation cap for today.
Mark Byers
@Mark Byers - Im jealous
SwDevMan81
@SwDevMan81: And I agree with you find an exact duplicate it ought to generate reputation, but currently that is not the case. You might want to vote up this question on meta: http://meta.stackoverflow.com/questions/37466/give-an-incentive-for-finding-duplicate-questions
Mark Byers
@Mark Byers - oooo I like it, upvoted... and you got me 100 extra rep for signing into meta haha, score.
SwDevMan81
+3  A: 

In that specific example there is no difference - it will compile to identical bytecode.

It only makes a difference if there is a local variable or parameter with the same name as the method you want to call, in which case you need to write this to refer to the member and not the local variable.

Mark Byers
A: 

There is no difference from an execution standpoint. As you imply, some people use this, some don't.

Use the standard you've decided is correct, unless you are overridden by company standards.

automatic
A: 

Not performance, they will compile to the same IL.

The thing with the this keyword is that it you don't have local variables with the same naming as the class members.

private void MyMethod2()
{
    Action MyMethod1 = MyMethod2;
    MyMethod1(); // recursive call to MyMethod2

    this.MyMethod1(); // call to real MyMethod1
}

Other than that some people like it, some does not. Follow the code standard in your team.

Albin Sunnanbo