配列からランダムに指定個数選択するには、
- .OrderBy()にGUIDを与えてランダムソートし、
- .Take() で指定個数取得すれば良い
RandomTake.cs
using System;
using System.Collections.Generic;
using System.Linq;
IEnumerable<string> lines = new string[] {"1","2","3","4","5","6","7","8","9","10"};
IEnumerable<string> newLines;
newLines = lines.OrderBy(i => Guid.NewGuid()).Take(3);
foreach(var line in newLines)
{
Console.WriteLine(line);
}