Since the keyboard interface provides only one action for the ALT key, both ALT keys should work to perform the designated action.
Actually, that's incorrect. They give different virtual keycodes, for the express means of using them differently.
The Virtual Key Code for Alt is VK_MENU, but is extended into VK_RMENU, and VK_LMENU.
Try CTRL+ALT+DEL using the keys on the right side of the keyboard. It doesn't work. So this is more a function of implementation, than error. And if the workaround works, it seems that it may be functioning as designed- that's mouser's call, though it will affect at least myself if he does change it.
The distinct Virtual KeyCodes from MSDN:
Left MENU key
Right MENU key
To Tom's excellent point, when you press right alt you get the following:
vkCode: 162, wparam: 260, lparam: 3398032
vkCode: 165, wparam: 260, lparam: 3398032
And when you release, you get the following:
vkCode: 162, wparam: 257, lparam: 3398032
vkCode: 165, wparam: 257, lparam: 3398032
It's sending two keys - the shortcut for CTRL+ALT.
AltGr+Del used to do the same as CTRL+ALT+DEL, but it's handled at a lower level than normal key combinations now.