The difference between ScriptManager and ScriptManagerProxy is:
If the page contains ScriptManager control, then ScriptManagerProxy enables nested components to add service reference and script.
ScriptManager includes functionality that enables partial page rendering and Microsoft Ajax library.