Linux-on-the-desktop isn't popular not because of the OS (which is just fine) or GUI (which is also just fine); it's applications that are hindering adoption.
People either expect the same software they were trained to use (MS Office, Photoshop) or there are apps needed that don't have an open source equivalent. Users have to be steered or forced to accept change (there's no fighting human nature), and if they do, at least the Office software is pretty easily adopted to. GIMP is functional for basic needs but if a user has trained on Photoshop it will be a frustrating experience few are willing to see to the end.
For users without those needs it's highly recommended. Computer users are a funny bunch; they tend to over-estimate their requirements while spending 100% of their actual time on screen with very basic tools. They happily migrate to tablets but insist on being able to calculate the trajectory of a Saturn5 rocket on their desktops (which Linux would, ironically, be better able to perform), even if they never actually use that functionality.
For most home and business office environments Linux would be a viable and reliable choice. There are areas where it does very poorly in comparison to commercial OSs / applications, with photo and graphics editing and production being the most glaring. Low and Mid-level video is also poorly represented, but high level video, 2D vector and 3D rendering options are excellent. Few home users would be affected by these limits or advantages.
By far the biggest barrier to adoption of Open Source environments for the home user is documentation. Software developers would rather have daily root canals without anasthetic than write documentation that is complete and is written for a non-technical audience. (Compounding the problem is the nature of Open Source software, which tends to constantly evolve in small steps which can render existing documentation problematic, where some small change creates an installation or use barrier, and these issues can occur more frequently than with closed source software). They write code, not English, and without actually investigating, will usually reply that everything a user needs is online (somewhere). That is simply not good enough if one expects Linux to succeed on the desktop.