The major strength of Contextual techniques is that they provide a tested, well defined process for studying and undestanding what is going on "out there." There are a number of weaknesses that need to be taken into consideration before choosing to use Contextual techniques.
The biggest plus in using Cotextual techniques is that there's a well defined, tested procees for how to use them. This is a win for two reasons. It is easier to learn, in fact you can get formal training in how to do it. The second is that in the day and age of SEI, ISO and other process fixations, having one may make it much easier to sell to the higher-ups. Additional strengths of Contextual techniques are that they were designed to result in a product design and to fit into a product development process. Also, there are a lot of resources available, for a field method, including conference tutorials. Lastly, Contextual techniques were created for finding similarities across different situations, which is exactly the situation facing most software developers.
Contextual techniques might not be the best choice if what you are working on doesn't have users who will be using the system to do work. Kiosk systems and other walk-up-and-use systems are probably the prototypical situation where Contextual techniques are not the most appropriate tools. Also, if the question you are interested in is either much bigger or much smaller than what is a typical focus for Contextual techniques, the best choice might be some other method such as traditional ethnography or surveys, for instance. Other weaknesses of employing Contextual techniques are the fact that you have to go out and visit users on their own hme turf. This is a foreign concept to the way things are usually done, even within organizations that are embracing UCD. So you are apt to run into some resistence when you try to implement this "radical" concept. Finding the right people to form the team can also be a challenge. Holtzblatt and Beyer (1996) suggest that at least half the team should have design experience. But the overriding concern is getting inquirers who can fit into the role and be good interviewers and analysers, they have to be sharp, and good "people" people. Finally, choosing the users, both in terms of the host sites and the individuals within a given customer location, is a bit of a black art. But this sort of problem is common to many HCI methods.