I have list of products in product object. So, for one profile I want to restrict to view one product(one product record) among list of products.
Since you can't set sharing on the Products object, the best way here is to:
- Create different Pricebooks in which one contains all the products and the other leaves out the products you don't want to expose to certain users
- Share these Pricebook with different users / groups.
Different profiles won't help you out as they only allow for general access and view all / modify all. They don't allow to differentiate record access the way you want.