As far as free ones goes, I use frhed (on that wiki page too) which is especially nice with the partial file open feature if I only need to look at a certian part of a massive file
The only problems I have with it is it can't open files with non-english names so I have to rename them first. Also it lacks a nice but rare feature I saw once many years ago where you could do a kind of "differencing search" (not sure what the proper term is) - basically searching for "ABDE" also matches "bcef", "1245" etc where the string is the same as the searched with the bytes all offset by the same amount. I think it was some software specially for hacking games/ROMs, but I've yet to find another hex editor with that feature, and I can't find the original tool I found that feature in
