Adding parameter to event handler doesn't makes sense. Think of who responsible of passing the parameter value? The event handler get invoked by system upon occurrence of respective event. Also event handler method required to follow specific predefined signature, and adding parameter changes method signature, hence you got that error message.
Possible solution is to declare ScoresList
as global variable so it will be accessible accross methods in the same scope, including your event handler method.
private List<int> ScoresList = new List<int>();
private void lstStudents_SelectedIndexChanged(object sender, EventArgs e)
{
int target = lstStudents.SelectedIndex;
if (target != -1)
{
Student student = (Student)students[target];
txtScoreCount.Text = Convert.ToString(ScoresList.Count);
}
}