I've been doing some WinForms work lately (I'm primarily a WebForms developer) and had a lot of trouble working with the WinForms DataGrid. Primarily, the DG just seemed very difficult to customize in terms of behavior and look & feel. Whereas with the WebForms version of the DG, the declarative model and the power of CSS makes it a snap to do these things, the WinForms version just took way too much work.
So after looking around and trying a few open source controls, I finally stumbled on DevAge's SourceGrid3. I really like it. It allowed me to do things with a grid that simply were waaaaay too time consuming/difficult with the out of the box WinForms DG, which is just too tied into the DataSet model and doesn't work very well with custom business objects and typed collections.
It does take some time to pick it up, but the MVC design of the library makes the code very clean and extremely flexible.
The Source Pack also comes with a variety of other controls for WinForms development. Definitely worth a look for any WinForms developers looking for more flexibility in grids.