Virtual Desktops are not a substitute to multiple monitors. With multiple monitors you can have several full screen windows open at the same time. Like coding in your main screen and seeing documentation/web browser in the other.
Contrary to popular belief, you cannot physically look at two screens at the same time.
I have optimised my workflow, I am still productive, but the second monitor still brings me joys that nothing else can.