Multiuser techniques play a central role in the fifth-generation (5G) and beyond 5G (B5G) wireless networks that exploit spatial diversity to serve multiple users simultaneously in the same frequency resource. It is well known that a multi-antenna base station (BS) can efficiently serve a number of users not exceeding the number of antennas at the BS via precoding design. However, when there are more users than the number of antennas at the BS, conventional precoding design methods perform poorly because inter-user interference cannot be efficiently eliminated. In this paper, we investigate the performance of a highly-loaded multiuser system in which a BS simultaneously serves a number of users that is larger than the number of antennas. We propose a dynamic bandwidth allocation and precoding design framework and apply it to two important problems in multiuser systems: i) User fairness maximization and ii) Transmit power minimization, both subject to predefined quality of service (QoS) requirements. The premise of the proposed framework is to dynamically assign orthogonal frequency channels to different user groups and carefully design the precoding vectors within every user group. Since the formulated problems are non-convex, we propose two iterative algorithms based on successive convex approximations (SCA), whose convergence is theoretically guaranteed. Furthermore, we propose a low-complexity user grouping policy based on the singular value decomposition (SVD) to further improve the system performance. Finally, we demonstrate via numerical results that the proposed framework significantly outperforms existing designs in the literature.