Используйте ключевое слово params в C#
Если вы используете ключевое слово params перед параметром массива, используемым в качестве параметра last в методе, тогда вызывающий код может передавать любое количество значений для этого параметра. Следующий код определяет метод ShowValues, который может принимать любое количество строковых параметров.
// Показывать ноль или более значений.
private void ShowValues(params string[] values)
{
    lstValues.Items.Clear();
    foreach (string value in values)
    {
        lstValues.Items.Add(value);
    }
}
Следующий код показывает, как пример программы вызывает ShowValues, передавая ему 0, 3 или 5 параметров.
private void btn0_Click(object sender, EventArgs e)
{
    ShowValues();
}
private void btn3_Click(object sender, EventArgs e)
{
    ShowValues("Red", "Green", "Blue");
}
private void btn5_Click(object sender, EventArgs e)
{
    ShowValues("Aardvark", "Bear", "Cantalope", "Dingo", "Eagle");
}
														
	
								
								
													
 
																							 
																							