Yes and no. Depends what you want to do, and how sophisticated your needs are.
For basic email, internet, music and video playing, and word processing, it is absolutely good enough to replace Windows. The email and web browsers available are some of the same names that many Windows users recognize (Thunderbird, Firefox, Opera, etc.), and adding a few easy-to-install packages allows you to play just about any music or video file that you’re likely to come across.
It’s the compatibility stuff, and some of the more complicated or unusual things, that present some problems.
For example, the standard word processor in Ubuntu is OpenOffice. It works great for basic documents, it reads and writes Word document format, and i’ve never really had any trouble with it. But power users who produce documents with complicated formatting report that OO has trouble dealing with the more difficult stuff. Importing heavily-formatted documents from Word can result in some weird stuff happening to the document.
Another area where Ubuntu struggles a bit, i think, is video editing. There are some non-linear editors available, but i’ve never found one that really works very well, and lots of other users report the same thing. Even the much-maligned (IMO, somewhat unfairly) Windows Movie Maker seems to do better than the video editors available to Ubuntu users.
Image processing can be done with good results, but it requires learning new programs or being satisfied with simple stuff. The GIMP is a very powerful tool, but it has a pretty steep learning curve, and users familiar with the layout of Photoshop will find the controls a bit hard to get used to. But simpler tools like Picasa are available, as well as a few other Linux-specific programs, and do a perfectly decent job.
Some people try to sidestep these compatibility issues by running Windows software on Linux. The free way to do this is using the WINE compatibility layer, but the success of this strategy depends on the software, and some programs are much easier than others to get running in WINE. Some don’t work at all, or are so buggy as to be effectively useless. It’s also possible to implement this using a paid service like Crossover, which is essentially a corporate, supported version that allows users to run programs like MS Office and Photoshop in Linux.