Generall I use MP3Tag, http://www.mp3tag.de/en/, which can be a bit eccentric but generally works very well. Occasionally I need to do stuff from scripts, and for this I use ID3Edit.dll, http://audiopimp.com/id3edit.html, though in the future I'd probably switch to Python.