Go to the Group Policy Editor- Click on Start button, then type "gpedit.msc" without quotes. In the window that opens up, navigate to the following node in the left pane:
User Configuration\Administrative Templates\Start Menu and Taskbar
In the right pane locate the policy setting called "Do not allow pinning items in Jump Lists" and ENABLE the policy. This prevent users from pinning files, folders, Web sites, or other items to their Jump Lists in the Start menu and taskbar. Items that are already pinned to their Jump Lists continue to show, but users cannot unpin the existing items from their Jump Lists.
Also, under the same node, locate the policy called "Do not allow pinning programs to the taskbar" and enable it. With this,users cannot change the programs that are currently pinned to the taskbar. Programs that are already pinned to the taskbar continue to show, but users cannot unpin existing programs or pin new programs.
Edit: There seems to be a bug here which allows unpinning despite enabling the policy. So after following the steps above, see this MS support page.
http://support.microsoft.com/kb/981177