datagridview allows you to format the way the data can be seen and allows you to edit the data if you like on the fly in the grid as well as removing data too I believe. Same thing can be done in the listview but not as easy as datagridview. There are also many many more features in the datagridview than a listview and datagridview was designed for this purpose - pretty much a mini database representation and functionality locally on the client.
you can add controls in a datagridview column as well like a combobox if you like, with a listview I don't think you can exactly.
datagridview also allows you to validate cells and prompt for correct input for example before leaving the cell. it really depends what your app is needing to do. If its more towards a database functionality then a DGV would be the way to go