Here's something that might work. Doesn't use LINQ, so it should be faster.
public class Model
{
public List<string> Values { get; set; }
}
string[,] parts = new string[,] {{"a","b","c"},{"d","e","f"}};
List<Model> list = new List<Model>();
int dim1 = parts.GetLength(0);
int dim2 = parts.GetLength(1);
for (int i = 0; i < dim1; i++)
{
List<string> values = new List<string>();
for (int j = 0; j < dim2; j++)
{
values.Add(parts[i,j]);
}
list.Add(new Model(){ Values = values });
}