This manuscript proposes a path-following and collision avoidance guidance and control system for an autonomous surface vehicle operating in cluttered environments under perturbations. A nonlinear model predictive control strategy handles the state and control constraints for obtaining a guidance law. The approach considers the vessel sideslip angle to provide the desired heading angle, satisfying path-following and obstacle avoidance. Additionally, to solve the nonlinear optimization problem for obtaining the guidance law in real-time, the acados software package is used. Furthermore, in order to guarantee that the vehicle tracks the guidance in presence of model uncertainties and external disturbances, a robust adaptive sliding mode low-level controller is adopted. This controller is finite time convergent, and dynamically adapts its control gain to use only the necessary control inputs. Furthermore, a low-memory and computationally-light obstacle detection strategy employing a LiDAR sensor is presented and proven to run in real-time. Simulation and experimental tests conducted using a customized prototype validate the advantages of the proposed strategy and demonstrate the effectiveness of the path following while evading multiple obstacles in the presence of external disturbances and model discrepancies.