<t>These are the current declaration and initialization methods for a simple array.<br/>
<br/>
string[] array = new string[2]; // creates array of length 2, default values<br/>
string[] array = new string[] { "A", "B" }; // creates populated array of length 2<br/>
string[] array = { "A" , "B" }; // creates populated array of length 2<br/>
string[] array = new[] { "A", "B" }; // creates populated array of length 2<br/>
string[] array = ["A", "B"]; // creates populated array of length 2<br/>
<br/>
```<br/>
<br/>
Note that other techniques of obtaining arrays exist, such as the Linq `ToArray()` extensions on `IEnumerable`.<br/>
<br/>
Also note that in the declarations above, the first two could replace the `string[]` on the left with `var` (C# 3+), as the information on the right is enough to infer the proper type. The third line must be written as displayed, as array initialization syntax alone is not enough to satisfy the compiler's demands. The fourth could also use inference. The fifth line was introduced in C# 12 as collection expressions where the target type cannot be inferenced. It can also be used for spans and lists. If you're into the whole brevity thing, the above could be written as<br/>
<br/>
```<br/>
var array = new string[2]; // creates array of length 2, default values<br/>
var array = new string[] { "A", "B" }; // creates populated array of length 2<br/>
string[] array = { "A" , "B" }; // creates populated array of length 2<br/>
var array = new[] { "A", "B" }; // created populated array of length 2<br/>
string[] array = ["A", "B"]; // creates populated array of length 2<br/>
<br/>
```</t>