Restricting access to certain functions is best administered through GPO. The reason I say best is that in an environment where multiple individuals may be using the same physical PC you may wish to have different restrictions based on the user, not the PC.
While I am not going to say the following is the best or only way to achieve your desired results it has always worked for me.
Create your group policies. I like to do this by first creating an OU, something like 'CompanyGpo'. Access the properties of the OU and click on tab Group Policy. From there you may add, edit, or delete policies. When you create a policy most of the policy settings will be configured under 'User Configuration'. From there you will have a multitude of items you can control.
For example, say you wanted to disable 'Add/remove programs'. Navigate to User Configuration/Administrative Templates/Control Panel/Add/Remove Programs and ENABLE 'Disable Add/Remove Programs'.
Be careful with the GPO settings, sometimes Microsoft makes it ENABLE to disable or ENABLE to enable, etc.
Once the GPO(s) has been created you may create OU's for different groups of users, add the GPO(s) to the OU, move the user to the OU and you should be ready to go.
Of course there is a LOT more to group polices and I strongly suggest a very sound understanding and a plan of action before implementation any group policy procedures. Will save you a lot of headaches later.
Also, I like to layer my GPO's rather than using a monolithic approach.