This is actually going to be part of the UI design portion of the class as this is a common questions, "When to use grids." But in regards to which grid to use, the most commonly used are the DataGridView and the Infragistics grid. There are also a lot of developers who use the DevExpress grid as well.
Unless you are going to have complicated needs (i.e. data bands, etc.) then the DataGridBiew will probably meet your needs...you can also extend this grid as much as you need by creating your own classes, subclassing this grid, etc. to make it do what you need.
In VFP, we rolled our own Grid Class, the main functionality being that the user ,at run time almost, could decide the columns, layout, colour etc. This was done by having a 'Parameter File' separate from the application, which the application interrogated at runtime, and then populated the grid with the desired columns and settings. This in effect means that each client installation can decide on the makeup and layout of the grid, rather than having to be tied to an application wide setting.
If there was something with similar functionality.....