I guess you've confirmed the binding of
^ in Dired as being
dired-up-directory, so which command is invoked is not the problem, unless you or something you load has advised that command. (Use
C-h k ^, and let us know if the command is advised.)
You tagged this with
microsoft-windows. Maybe mention which MS Windows version you use. I do not see this with Windows 7 64-bit.
Do you see the same behavior if you start Emacs by using
runemacs -Q, i.e., with no init file? If so, please give a recipe here, starting from
runemacs -Q. In that case, this could be an Emacs bug.
If you do not see the problem with
emacs -Q then recursively bisect your init file until you narrow it down to find the culprit. You can use command
comment-region to comment out the region of code (use
C-u with it to uncomment the region).
Once you find the culprit code, you can investigate that more closely. Or you can report here what you've found, if you need further help. For the best help, be as specific as possible.
As for redefining the key: That's not a problem - just use
(define-key dired-mode-map SOME-KEY 'dired-up-directory), where
SOME-KEY is a key description. For example, to bind the command to
C-o, you can use this:
(define-key dired-mode-map (kbd "C-o") 'dired-up-directory)
Updated after your comment and others -
Since you see the same thing from
emacs -Q, the problem is either something in your MS Windows setup (i.e., outside Emacs) or a bug in Emacs itself.
But other comments make clear that the problem seems to be sticky keys in MS Windows. Try turning sticky keys off.