Most linux gurus recommends not to upgrade via console because the inexperienced might break something. The statement is misleading though. If you know (and are careful) enough to upgrade via console, go ahead.
Standard software upgrading, while staying within the OS version should never be a problem--via gui or cli--if your package manager's package source list doesn't have conflicting sources.
Distribution version upgrading is really different, on the other hand.
For example, in OS version 1, function Baz is handled by package Foo, but in version 2, package Bar replaces package Foo to do the same function Baz. However a good amount of packages depends on package Foo...
And the only clean way to do this is by installing packages one by one that don't conflict each other (which is usually done by an algorithm). However, in the user's point-of-view, accomplishing this is no harder than issuing a standard upgrade command.
What breaks the system in the end, is that since entirely new software is introduced different methods are implemented deprecated methods are removed, and various other changes that makes the perfectly working config may not work anymore.
And a simple point and click will never be able to fix this.
This is a thing that differs Linux from Windows. Windows, yes, a point and click fixes everything, but you're trading configurability for simplicity. At its core, each Windows install is more or less indifferent than any other windows install.
And to answer your last question, I never had a problem doing a standard upgrade. I only had problems where I tried to install stuff not maintained by the OS's software maintainer(s) (ie. self-compilations, stuff from another but related distro..).