Even though various frameworks exist for reasoning under uncertainty, a realistic fault diagnosis task does not fit into any of them in a straightforward way. For each framework, only part of the available data and knowledge is in the desired format. Moreover, additional criteria, like clarity of inference and computational efficiency, require trade-offs to be made. Finally, fault diagnosis is usually just a subpart of a larger process, e.g. condition-based maintenance. Consequently, the final goal of fault diagnosis is not (just) decision making, and the outcome of the diagnosis process should be a suitable input for the subsequent reasoning process. In this chapter, we analyze how a knowledge-based diagnosis task is influenced by uncertainty, investigate which additional objectives are of relevance, and compare how these characteristics and objectives are handled in two well-known frameworks, namely the Bayesian and the Dempster-Shafer reasoning framework. In contrast to previous works, which take the reasoning method as the starting point, we start from the application, knowledge-based fault diagnosis, and examine the effectiveness of different reasoning methods for this specific application. It is concluded that the suitability of each reasoning method highly depends on the problem under consideration and on the requirements of the user. The best framework can only be assigned given that the problem (including uncertainty characteristics) and the user requirements are completely known.