The memory modules with the extra tall heatspreaders that kind of look like a comb are the problem. The extra tall memory heatspreaders interfere with the tower style cpu heatsinks you mentioned. The problem is usually the memory slot closest to the cpu socket. The solution is to install memory modules with standard heatspreaders or no heatspreaders at all.
A while back Tom's Hardware published several articles about memory. The articles mentioned that the tall memory heatspreaders are of questionable value and performance. Consider them an advertising gimmick to generate revenue.
The second problem is the width of a pc case. The case has to be wide enough to accomodate the tall cpu heatsinks. I normally recommend a case should be at least 8 inches wide if you plan to use a tower style cpu heatsink and a case fan on the side panel. It can be a little narrower if your case does not have a fan on the side panel.
All three heatsinks you mentioned are very good.
I have the original Thermalright 120 which is the grandaddy of all tower style heatsinks, the original Coolermaster Hyper 212 (not 212+), and the new Thermalright Venomous X which is supposed to be the new and improved version of the Thermalright Ultra 120. They are all good but the Hyper 212 is my favorite. It produces the best results for me.
I absolutely, positively, 100% guarantee individual results will vary.