コンストラクタに特に何も指定しないでListを作成した場合は、空のListが作成されます。 配列やコレクションを指定して作成した場合は、それと同じ内容のListを持つListが作成されます。 どちらの場合でも、インスタンス作成後に要素を追加したり削除したりすることができます。

空のListを作成して後から要素を追加する
using System;
using System.Collections.Generic;

class Sample {
  static void Main()
  {
    // 空のListを作成する
    List<string> list = new List<string>();

    // 作成したListに要素を追加する
    list.Add("Alice");

    list.Add("Charlie");

    list.Insert(1, "Bob");

    // listの内容は{"Alice", "Bob", "Charlie"}となる
  }
}

初期値をもったList(あらかじめ要素が格納された状態のList)を作成したい場合は、上記のように配列やコレクションをコンストラクタに指定してインスタンスを作成するか、後述のコレクション初期化子を使用してインスタンスを作成します。

また、コンストラクタに他のListを指定すれば、そのListの複製を作ることができます。(詳細:§.Listの複製) このほか、初期容量を指定してListインスタンスを作成することもできます。(詳細:§.初期容量)