//...можно ещё добавить "защиту от дурака", чтобы не видеть кишки (системное сообщение об ошибке, место возникновения которой изначально не понятно) если в строке будет только логин или не будет правильного разделителя):
string[] arrLoginPair = lstakk[0].Split(':');
lstakk.RemoveAt(0);
if (arrLoginPair.Length==2){
string strLogin = arrLoginPair[0];
string strPass = arrLoginPair[1];
}else{
project.SendWarningToLog("Ошибочная пара логин+пароль в файле", true);
continue; //здесь переходим к следующему шагу цикла
}
//Для взятия рекомендуется метод Split
string[] arrLoginPair = lstakk[0].Split(':');
lstakk.RemoveAt(0);
string strLogin = arrLoginPair[0];
string strPass = arrLoginPair[1];
var useproxy = project.Variables["Список 1"].Value;
if(useproxy == "True")
{
if (project.Variables["path_to_file"].Value == "")
throw new Exception("Файл не указан!");
project.Lists["Список 1"].Bind(project.Variables["path_to_file"].Value);
if (project.Lists["Список 1"].Count == 0)
throw new Exception("Файл не содержит строк!");
}