In your case, this
represents the current instance of the class. Hence, unless you are dealing with extension methods, you should be good to use either way as it is a matter of semantics.
What is the difference between "Controls.Add(xyz)" and "this.Controls.Add(xyz)" in ASP.NET (C#)?
None.
How/When does it matter if I am adding the same control onto a webpage but via two (different) aforementioned methods?
It does not matter.
When one should be preferred over the other?
Using this
is usually preferred as it is more explicit and helps code readability. But it is a matter of preference.
Reference:
this (C# reference)