You'd be better off making an array:
var players = new Player[x];
for (int i = 0; i < x; i++)
{
players[i] = new Player(i, x);
}
or use Linq:
var players = Enumerable.Range(0, x)
.Select(i => new Player(i, x))
.ToArray();
You can then reference the players you created with.
var player1 = players[0]; // Note: array indexes start at 0
Of course, you may not actually need to use arrays, specifically. Many other collection classes might suit your problem better.
Further reading: