I\'m a VB.Net guy. (because I have to be, because the person who signs my check says so. :P) I grew up in Java and I don\'t generally struggle to read or write in C# when
The T is a type parameter and in this case can be anything (a constraint may be specified, but here there is no constraint). Without this feature you would have to declare the method for every type you plan to use:
static void Foo(params int[] x)
static void Foo(params string[] x)
static void Foo(params Customer[] x)
etc...
More information on generics can be found on MSDN: Introduction to Generics (C#).