Array keys are case sensitive in PHP because some specifications require it and people might want to use arrays in code handling such specifications. For $_REQUEST those specifications are not just mainly HTTP GET, POST and COOKIE variables but solely those because that's all the array stores. Whether a developer needs to treat the user value as case-sensitive or not depends on the application.
As for ASP.net, I don't use it at all but I am convinced it supports case-sensitive operations on both keys and values - otherwise it would be completely useless for anything dealing with HTTP parameters, passwords, certain CAPTCHAs, spelling/grammar checks.
Almost sounds like you agree with me though; and that your disbelieve comes from a reversed understanding of the terms case-sensitive and case-insensitive.