Electric vehicle routing problems (E-VRPs) deal with routing a fleet of electric vehicles (EVs) to serve a set of customers while minimizing an operational criterion, for example, cost or time. The feasibility of the routes is constrained by the autonomy of the EVs, which may be recharged along the route. Much of the E-VRP research neglects the capacity of charging stations (CSs) and thus implicitly assumes that an unlimited number of EVs can be simultaneously charged at a CS. In this paper, we model and solve E-VRPs considering these capacity restrictions. In particular, we study an E-VRP with nonlinear charging functions, multiple charging technologies, en route charging, and variable charging quantities while explicitly accounting for the number of chargers available at privately managed CSs. We refer to this problem as the E-VRP with nonlinear charging functions and capacitated stations (E-VRP-NL-C). We introduce a continuous-time model formulation for the problem. We then introduce an algorithmic framework that iterates between two main components: (1) the route generator, which uses an iterated local search algorithm to build a pool of high-quality routes, and (2) the solution assembler, which applies a branch-and-cut algorithm to combine a subset of routes from the pool into a solution satisfying the capacity constraints. We compare four assembly strategies on a set of instances. We show that our algorithm effectively deals with the E-VRP-NL-C. Furthermore, considering the uncapacitated version of the E-VRP-NL-C, our solution method identifies new best-known solutions for 80 of 120 instances.