We give an introduction to two paradigms for finding antiderivatives of given functions that are used in symbolic integration. Risch-type algorithms deal with (suitable representations of) functions directly whereas Zeilberger-type algorithms use operator calculus. There are parametric versions of both of them, which are useful in the evaluation of definite parameter integrals. These algorithms address the case when no antiderivative of the integrand is found as well as the issue of verifiability of the result. We will discuss the principles behind and give examples.