There is no difference except that the first Nothingand the second are empty string.
You use square brackets ( [...]) around an identifier in VB.NET to tell the compiler that it should ignore the keyword.
It is often used on Enum:
Dim colors = [Enum].GetValues(GetType(Colors))
because it Enumis a keyword and type. Without parentheses that will not compile.
MSDN :
, . - , .