The concept of barrier crossing can describe many biological systems. Rare events, such as protein folding or chemical reactions, can be modeled as systems that must cross a barrier potential to change their states, e.g., folded or unfolded states. These systems do not occur in isolation but are rather coupled with their environment. Typically, we choose a reaction co- ordinate and project out all the other orthogonal degrees of freedom. If the orthogonal degrees of freedom relax as rapidly as the reaction coordi- nates, non-Markovian memory effects must be taken into account in order to describe the dynamics accurately. This thesis uses the generalized Langevin equation to study the mean first-passage time for various non-Markovian systems. We begin by considering a multi-exponential memory kernel exhibiting various memory times and friction coefficients. We then propose a heuristic formula that shows that the MFP is dominated by the single memory exponential with short memory time as well as large amplitude. Following this, we relax the equilibrium condition, and therefore we consider a generalized Langevin equation out of equilibrium. Also, in this case, we suggest a formula that takes into account the effect of non-equilibrium, showing non-Arrhenius behavior. Since many chemical and biological systems exhibit asymmetric free-energy profiles, we next consider an asymmetric potential. From simulation data, we gather evidence that the dynamics in one well are independent of the other. Therefore, we describe the dynamics via the times mean first-passage time (L,R) that are needed to reach the barrier from left and right, respectively. In the final section, we focus on another important factor that characterizes the process of barrier crossing, the mean transition path time. Again, we concentrate on a non-Markovian system, and, with the help of simulations, derive a heuristic formula. Contrary to the mean first-passage time, the mean transition path time reaches its maximum in the Markovian case; for intermediate memory time it decreases, particularly for smaller mass, and settles on a constant value for large memory times.