The advantages are many -- no extra files IF there's native support, fully scaleable, small size in your code...
The disadvantages are that as others mentioned colouring them is hard/nonexistent (though M$ is working on multicolour support in TTF), you cannot rely on the characters existing in the font you have choosen, you may have to resort to webfonts to get them to show across all platforms, said webfonts often being larger than just using images if you can get away with using effects like the incorrectly named CSS sprites.
I'm still playing with it myself -- I'm actually thinking on using a custom webfont that has certain members of the geometric shapes table with a "background" that the actual character can be laid over. (this is for a forum software).
<span class="emoji emoji_circular"><span>😂</span></span>
where the outer and inner span is set to position:relative, and I do a .emoji:before that's absolute positioned UNDER the inner span to create a 'background' I can colour... could even go to three colour by using :after. If you for example placed just a filled in circle in yellow under the smilie emoji...
The big trick would be making sure that both the emoji block and the custom block have the same measurements. Thankfully in my case, I'm pretty handy with fontCreator.
... of course if you wanted the teeth white, that would involve a third character at which point you might be better off using double-resolution .png with background-size for modern browsers, and normal 1x sprites for legacy browsers. (The @media(min-width:1px) trick good as always for differentiating between them!)
It opens up some nice possibilities, it's nice IF it's a available, I would prefer it over SVG (a tech that should have been left for dead a decade ago when M$ and Adobe couldn't drop it fast enough), but it comes down to how complex or how simple you want them to be, and if you can live with the cross-platform inconsistencies. Webfonts could plug the holes in said inconsistencies to a degree, but it's not a perfect solution.