Usually you use brackets to differentiate a routine, property, variable, parameter or other name from a keyword. For example, you could make a parameter to a method be something like "Me" or "Overloads." Then you'd need to put brackets around it in the method declaration and everywhere you use it.
(You also use it in SQL statements if a field, table, or other name is a keyword or contains spaces.)
You can generally avoid the brackets if you pick better names.
Author of "Visual Basic 2005 Programmer's Reference"