Today I was surprised to find that in C# I can do:
List a = new List { 1, 2, 3 };
Why can I do this? What constructor
It is so called syntactic sugar.
List is the "simple" class, but compiler gives a special treatment to it in order to make your life easier.
List
This one is so called collection initializer. You need to implement IEnumerable and Add method.
IEnumerable
Add