This blog defines how to get selected feature from ArcMap.

IMxDocument pMxDoc = m_application.Document as IMxDocument;
IMap pMap = pMxDoc.FocusMap;
IEnumFeature pEnumFeat = pMap.FeatureSelection as IEnumFeature;

pEnumFeat.Reset();

IFeature pFeat = pEnumFeat.Next();

if (pFeat == null)
{

MessageBox.Show("No Feature Selected.", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information);

System.Runtime.InteropServices.Marshal.ReleaseComObject(pEnumFeat);

return;

}
IFields pFields;

//Retrieving alla Fields value
IEnumFeatureSetup enumFeatSetup = (IEnumFeatureSetup)pEnumFeat;
enumFeatSetup.AllFields = true;
while (pFeat != null)
{

pFields = pFeat.Fields;

int indx = pFields.FindField("ID");

if (indx == -1)

{

MessageBox.Show("ID field not found in selected feature ", "Not Found", MessageBoxButtons.OK, MessageBoxIcon.Error);

pFeat = pEnumFeat.Next();
continue;
}
object valu = pFeat.get_Value(indx);
if (valu != null)
{

//Do something

}

pFeat = pEnumFeat.Next();
}

//Release Com object

System.Runtime.InteropServices.Marshal.ReleaseComObject(pEnumFeat);

}