using System.Collections.Generic;
public static void Main()
List<short> resultTemp = new List<short> { 1,2,3,4,5,6,7,8,9 };
var targetItemsCount = 6;
double increment = Convert.ToDouble(resultTemp.Count) / targetItemsCount;
List<short> result = Enumerable.Range(0, targetItemsCount).
Select(x => resultTemp[(int)(x * increment)]).
foreach (short x in result)