I am not quite sure what you mean by "staining". Tween and triton are detergents not stains. Do you mean, which to use to permeabilize the membrane before using a specific membrane protein stain? In that case, it depends on your cell type and amount of permeabilization. Tween and triton come in a variety of forms, but basically tween is a less stringent nonionic detergent than triton. For mammalian cells, typically I recommend to start with 0.1%-1% tween and if that doesn't work move on to 0.1%-1% triton. Keep in mind that the more stringent the detergent, the more membrane will be disassociated.
Sorry, I meant for immunostaining. Tween/triton-X would be used for permeabilization in this regard. I have seen people also argue that no permeabilization is needed for surface proteins. Just trying to gauge some different opinions.
Dr. Campbell-Valois is correct. If your going after a surface, extracellular, protein then there is no need to permeabilize. If the protein is intracellular or transmembrane then you need to permeabilize. Saponin, tween and triton are all good options use 0.1%-1%. Methanol or ethanol are also options if all else fails. However all proteins and cells are different, start with saponin or tween-20, then move on to the triton, then as a last resort ethanol, then methanol. This is also the order of stringency, so the saponin/tween will do the least damage to the proteins/lipids, while methanol does the most damage.