using System.Collections.Generic;
public static void Main (string[] args)
StrokeCollection strokeCollection = new StrokeCollection ();
strokeCollection.Add (new Stroke (){
new Point{ x = 2, y = 3 },
new Point{ x = 21, y = 5 },
new Point{ x = 7, y = 23 },
new Point{ x = -34, y= 22}
var res = (from stroke in strokeCollection
select new { Left = g.Min (p => p.x), Right = g.Max (p => p.x)}).FirstOrDefault ();
Console.Write (res.Left + " ------ " + res.Right);
public class StrokeCollection: List<Stroke>
public class Stroke : List<Point>