We propose a new general-purpose semi-local/non-local exchange-correlation functional approximation, named mBEEF-vdW. The exchange is a meta-generalized gradient approximation, and the correlation is a semi-local and non-local mixture, with the Rutgers-Chalmers approximation for van der Waals forces. The functional is fitted within the Bayesian error estimation functional framework (2014)]. We improve the previously used fitting procedures by introducing a robust MM-estimator based loss function, reducing the sensitivity to outliers in the datasets. To more reliably determine the optimal model complexity, we furthermore introduce a generalization of the bootstrap 0.632 estimator with hierarchical bootstrap sampling and geometric mean estimator over the training datasets. Using this estimator, we show that the robust loss function leads to a 10% improvement in the estimated prediction error over the previously used least squares loss function. The mBEEF-vdW functional is benchmarked against popular density functional approximations over a wide range of datasets relevant for heterogeneous catalysis, including datasets that were not used for its training. Overall, we find that mBEEF-vdW has a higher general accuracy than competing popular functionals, and it's one of the best performing functionals on chemisorption systems, surface energies, lattice constants, and dispersion. We also show the potential energy curve of graphene on the nickel(111) surface, where mBEEF-vdW match the experimental binding length. mBEEF-vdW is currently available in GPAW and other DFT codes through LIBXC version 3.0.0.