Try NBuilder - it builds lists of objects, and provides inclemently generated values for properties (you also can provide any value manually):
var products = Builder<Product>.CreateListOfSize(10).Build();
If you want (non-incremental) random items, you can pick them from any collection:
var randomProducts = Pick<Product>.UniqueRandomList(3).From(products);