Halo sold extremely well as soon as it was released. It was *the* game at the time. MS and Bungie did an excellent job hyping it.
Crysis's real problem is it's a PC game. PC games are rapidly becoming niche. It's no wonder most developers now write their games with ports to 360/PS3 in mind. Or just go straight to the consoles and skip the PC step altogether.
Well we were comparing a PC game with a 360 game (Halo 3 is only available for 360 as far as I know), so that means that it is one niche against another niche. 360 game sales might be bigger, don't know, but it is not that much bigger.
Industry Background
According to NPD Group, Inc., a market research firm, the electronic game industry was an approximately
$11.5 billion market in the United States in 2005. Of this $11.5 billion market, approximately $10.5 billion was
attributable to video game products, excluding sales of used video game products, and approximately $1.0 billion
was attributable to PC entertainment software.
But the above 'video game products' probably includes the console hardware...
Yup, that includes hardware. Games stood for $7.4 billion, so that would give PC games almost 14% of all game sales. Madden was the top selling game I think for that period for platforms: 360,Wii,PS3,PSP,NDS, XBX,PS2,GCN,GBA (9 platforms). Each platform would on average get (100-14)/9=9.6% (brutally simplified)
So the niche idea doesn't really make sense to me (since PC then would be one of the bigger niches

).
I am quite sure that the high HW requirements in combo with the idea that the cool thing with crysis is that it looks great when all bells are turned makes it sell so badly. A new games should be possible to enjoy on a 3-4y old rig and make use of current and next year or so hardware. I get the feeling that I could possibly play it on my rig, but not at all enjoy it, so I will not play it. This might be wrong since it could be great to play even without gfx set to max, so maybe the hype about the gfx has made crysis a bad favor.
Also Halo is a franchise and Halo 3 is almost a "must have" on 360 whereas crysis is just a purdy lookin fps in a long line of fps's for PC, so even though the numbers are quite different, I don't think it is all that surprising.