With the help of run-list in chef, you can specify which Recipes needs to run and what should be the order of execution for Recipes.
Run-list makes sure that recipes are executed in the same order as defined by you. In case, there is some recipe that is added twice by mistake then it will not be made run two times by the run-list.
You also need to specify the node on which run-list should be executed. Rub-list is also defined as the object of the node that is stored on Chef server.
It is maintained on Knife then from the workstation it is transferred to Chef server and management Console in Chef.