Heterogeneity and variability is ubiquitous in biology and physiology and one of the great modelling challenges is how we cope with and quantify this variability. There are a wide variety of approaches. We can attempt to ignore spatial effects and represent the heterogeneity through stochastic models that evolve only in time, or we can attempt to capture some key spatial components. Alternatively we can perform very detailed spatial simulations or we can attempt to use other approaches that mimic stochasticity in some way, such as by the use of delay models or by using populations of deterministic models. The skill is knowing when a particular model is appropriate to the questions that are being addressed. In this review, we give a brief introduction to modelling and simulation in Computational Biology and discuss the various different sources of heterogeneity, pointing out useful modelling and analysis approaches. The starting point is how we deal with intrinsic noise; that is, the uncertainty of knowing when a chemical reaction takes place and what that reaction is. These discrete stochastic methods do not follow individual molecules over time; rather they track only total molecular numbers. This leads, in the first instance, to the Stochastic Simulation Algorithm that describes the time evolution of a discrete nonlinear Markov process. From there we consider approaches that are more efficient and effective but still preserve the discreteness of the simulation, the so-called tau-leaping algorithms. We then move to approximations that are continuous in time based around the Chemical Langevin stochastic differential equation. In these contexts we will focus, later in this chapter, on a particular application, namely the behaviour of ion channels dynamics. In the second part of the review, we address the question of spatial heterogeneity. This involves consideration on the nature of diffusion in crowded spaces and, in particular, anomalous diffusion, a relevant topic (for example) in the analysis and simulation of cell membrane dynamics. We discuss different approaches for capturing this spatial heterogeneity through generalisations of the Stochastic Simulation Algorithm and that eventually leads us to the concept of fractional differential equations. Finally we consider the use of delays in capturing stochastic effects. For each case we attempt to give a discussion of applicable methods and an indication of their advantages and disadvantages.