None of the answers given so far covers the aspects that are really relevant here. Most of them are poorly written and only mention one or two arguments, probably only in an effort to gain reputation. My answer will lay out the arguments in a structured form, with unprecedented completeness and clarity, and with nice formatting. It will be enriched by an example which was not yet given in any other answer, and help the reader to properly and thoroughly understand this complex topic.
Well. Let's see how that plays out.
Seriously: The main arguments have already been given, and can roughly be classified into political/interpersonal ones or methodological/technical ones. I think that the details will vary depending on the subject, but the tags indicate that the question refers to the more technical fields.
The political arguments are mainly that the critique might backfire and might hurt your reputation. Beyond that, people are usually not funded for criticizing others: A paper that only criticizes another will hardly be published, and the publication count is in many cases the only measure of "success in academics". And even if your critique is justified and the paper is technically sound, a harsh critique may simply be deemed "unnecessary", and thus shed a bad light on the author.
The technical arguments are related to the efforts that are necessary for a profound and (optionally: ) "constructive" critique. In order to really identify technical flaws, you need a deep familiarity with the topic. Care has to be taken in order to eliminate the slightest doubts when criticizing others. This is particularly difficult when you are at the beginning of your career. The situation may be different when you really know the related work inside out and backwards.
Basically every non-trivial approach or insight has limitations or (hidden) assumptions. For a critique to be profound, the results often have to be replicated and the flaws have to be "verified", in that sense. The efforts for this are often prohibitively large. Whether a critique is considered to be constructive then mainly depends on whether you can suggest improvements. This was already summarized nicely in the answer by Jirka Hanika.
Therefore, much of the game that is played in the academic world consists of finding flaws and suggesting improvements: Find a paper that shows how to solve a certain problem with red, green and yellow balloons. Write a paper that points out the "serious limitation" of not considering blue balloons. Show that the same problem can be solved with blue balloons. You got a publication there, and maybe another year of funding.
However, there are papers that plainly criticize others. I'd like to refer to one of my favorite papers here, with the ballsy title "Clustering of Time Series Subsequences is Meaningless" :
Given the recent explosion of interest in streaming data and online algorithms, clustering of time series subsequences, extracted via a sliding window, has received much attention. In this work we make a surprising claim. Clustering of time series subsequences is meaningless.
These results may appear surprising, since they invalidate the claims of a highly referenced paper, and many of the dozens of extensions researchers have proposed ([a list of a dozen publications]).
So this paper basically burned down a whole research branch. Reading it can give you a glance at how difficult it is to criticize others in a way that can not be attacked or questioned on a methodological level. And even though the author himself says that the results are "negative", I think that one of the most useful contributions that a scientist can make is to put people back on the right track, instead of participating in the game that is essentially a politically and financially motivated waste of time.
So when you're sure that you can profoundly criticize others: Do it.