I suggest ArcGIS where you can process the classification and then refining the result by post-processing techniques (majority filtering...etc). see attached image.
Also Envi and Erdas are the most software used in image processing and classification
Generally speaking, Land Cover Classification (LCC) can be done by supervised classification and unsupervised classification techniques in a GIS based environment. LCC greatly depends on the availability of ground truth data. Please refer to the following links for LCC techniques and a basic tutorial:
There are multiple software available for LCC such as ArcGIS, ENVI, ERDAS Imagine etc. and GRASS GIS, QGIS for example in the open source domain. I second the suggestion of El-Sharkawy for using ArcGIS but please be informed it is a commercial software and comes with different levels of user license. If you can access the tools easily then ArcGIS would be better. Nevertheless, QGIS as well as other open source software (GRASS GIS, SAGA GIS) have also been used for LCC and relevant analyses. It also depends on the matter of choice. Below you find some more examples of open source GIS LCC studies: