POST is more secure than GET for sensitive data because POST parameters go in the request body (not logged in URLs/proxy logs), while GET sends data in the URL query string which is visible in browser history, server logs, and referrer headers. TRACE is for diagnostics, SET is not a standard HTTP method, and GET exposes data in URLs.