A phoneme is perceptually the smallest distinct sound unit distinguished among words in a particular language. Every language has its own set of phonemes, and all the words are ordered sequences of phonemes. Therefore, phoneme recognition is essential to automatic speech recognition (ASR) systems. Phonemes of a language can be classified together using a single machine learning (ML) model through the direct classification (also known as the baseline or flat classification) approach. However, it is observed that the performance of such phoneme recognition degrades with the increase in the number of phoneme classes. The challenge is pronounced in languages with a larger number of phoneme classes, like Hindi, which has 48 phonemes.In this paper, we propose a speaker-independent hierarchical classification approach for 33 Hindi-Devanagari consonants/phonemes using cepstral features with ML techniques like support vector machine (SVM), random forest (RF) and fully connected deep neural network (DNN). In this hierarchical approach, a given phoneme is classified into successive subgroups until the particular phoneme class is identified.To perform the classification task, a binary or multi-class classifier is invoked for each internal (non-leaf) node in the hierarchy tree. Our model identified pairs of Optimal Feature Sets (based on mutual information) and the best suitable ML classifier for each internal decision node in the hierarchy using 10-fold cross-validation to help in efficient classification. Our proposed hierarchical model leads to better accuracy and 57% improved performance for phoneme recognition compared with the non-hierarchical, that is, the direct classification approach.