Some of the time (well, most of the time) you don't want to play directly with the CVS tools, command line or graphical. A much better way is to integrate it directly with your development environment. Please add your comments here with respect to different development tools.
CodeGuide
Seems to have CVS integration in 3.0 version, but I don't know how good it is. Supports also Perforce.
Emacs
Use the PCL-CVS package to get very good CVS support, including visual conflict manager, annotated change lists, etc.
JBuilder
No idea. Please comment.
Since release 9 (I think it was that number) CVS support is even in the personal edition included. I use the enterprise edition. Integration is very well. CVSNT can't be used with JBuilder under windows. -- Guido
NetBeans
NetBeans seems to have a CVS client integrated as well. Runs on Linux, MacOS X, OS/2, HP-UX, OpenVMS, and Windows.
Eclipse
Eclipse has CVS running through its veins. Tightest integration with CVS you will find on the planet! Flavors are available for all major platforms.
IntelliJ IDEA
IDEA has pretty nice CVS support. Handles the standard operations through the gui. The absolute coolest thing about IDEA's CVS support is the diff-editor. It's the most intuitive and best looking I've seen.
JDeveloper 10.1.3
JDev 10.1.3 has CVS support now.