Agile embraces a lot of different techniques (pair programming, continuous integration, Kanban boards, burn-downs, refactoring, prototyping, agile charting), but is there one that you find you simply cannot live without? Or perhaps there is something that you use which other people don't really consider part of the "standard toolkit" of agile techniques but which you think everyone should be using?
The higher levels of Agility, are Mindset, Values and Principles. Perhaps it is more of a Complex Systems view of the world and Agile as a facet of it. Looking at anything as an ecosystem surrounded by a great deal of complexity and how the different aspects of it interplay to change the status at every moment is quite humbling and awesome.
“Continuous delivery of valuable software" is the crucial one of the 12 agile principles. By following the above principle, the teams make sure that at the end of each sprint, you have a working software in which you can deploy to production environment. End users would want to see the working software in the production environment as soon as possible. This technique of frequent delivery makes everybody happy all the time.
Safety Net: There are a group of properties pull together and call the "Safety Net" – Some agile managers define it as the "can't live without" category. What practices you choose to use to implement the Safety Net will vary with context, but essentially these are what you *do* to implement the project.
Feedback mechanism: Feedback is one of those "essentials" that you need to have. Of course on the soft side, there is a host of details about coping with feedback (how you behave when things do not go as you intended, culture, and how you exploit positive situations).The team should institute a continuous feedback mechanism. This can go a long way in determining something is not working, improving upon and moving on. Doing so will ensure Agility in the organization. There are usually a lot of options to correct or better a situation, however, a solution that worked for one organization or even one team in an organization may not work for another or may work with some tweaks. In that sense, there wouldn't be a best technique across the board, but something that works for a particular situation. By using the feedback loop, among other things, you are really managing the risk either before it becomes real or soon after it hits you. As you are aware with regard to risk, you can do three things - avoid it, mitigate it or accept it.
Agile is not prescriptive and which techniques are appropriate will depend on the context. Practices - it's a case of deciding where they are appropriate. One should never be so wedded to a practice that one uses it where it isn't appropriate.