First, using the shorthand syntax introduced in .Net 3.5, you could make this class definition a lot shorter:
public class CarSpecs
{
public CarSpecs() { }
public String CarName { get; set;
public String CarMaker { get; set; }
public DateTime CreationDate { get; set; }
}
This will compile into the exact same class as the one you have above.
Secondly, you can easily sort them using Lambda expressions or LINQ:
var linq = (from CarSpecs c in CarList
orderby c.CreationDate ascending
select c) as List<CarList>;
var lambda = CarList.OrderBy(c => c.CreationDate).ToList();