VM Agent based builds are an obsolete model. A docker/container-based pipeline is the current state of the art and allows for very fast builds with caching built in and isolated stages with narrow responsibilities.
There is an official Linux image for a VSTS Build Agent container - but, frustratingly, not for a Windows one! People have been begging for such an image for a long time now, but Microsoft do nothing... I just don't understand why they treat Windows as a 2nd class citizen!
[1] https://docs.microsoft.com/azure/devops/pipelines/process/co...
[2] https://docs.microsoft.com/azure/devops/pipelines/process/se...