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|http://www.omnicore.com]

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|http://www.netbeans.org/]

NetBeans seems to have a CVS client integrated as well.  Runs on Linux, MacOS X, OS/2, HP-UX, OpenVMS, and Windows.

![Eclipse|http://www.eclipse.org/]

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|http://intellij.com/]

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|http://www.oracle.com/technology/products/jdev/index.html]

JDev 10.1.3 has CVS support now.