NCRs (numeric character references) and 'character entity references' are types of character escape used in markup. Getting back to the question NCR is the preferable choice over the entities, entities are limited to a subset of Unicode characters, NCR can specify any character and theoretically Hexadecimal has less ambiguity. NCR for the win.
NCR as explained are more functional. HTML 4.01 has 252 Character entity references: http://www.w3.org/TR/html401/sgml/entities.html For X(HT)ML an application of XML, we have the XML specification that defines five "predefined entities" only: http://www.w3.org/TR/REC-xml/#sec-predefined-ent hence NCR should only be used if authoring XHTML and not using one of those 5 and HTML 4.01 only has 4 of those.
Numeric character references, both decimal and hexadecimal, can be safely used in (X)HTML and XML, but you need to be careful that you're referencing the character's code point from the Unicode character repertoire, not Windows-1252.