I was doing some muscle stretching after my daily run (the idea is to stretch to have flexible muscles) and it got me to think: is there a minimum amount of time required for the stretch to be effective? Is there a maximum time, in which past that limit we risk inducing injuries?
The general consensus on the internet and among various physical trainers is that static stretching in 20-30 second segments is sufficient to increase range of motion (ROM) in a muscle. This is corroborated by two studies (Very similar in nature, conducted by the same people), where one study showed that there was no difference when time was increased from 30 to 60 seconds and performed multiple times per day, and another that showed no gains when solely increasing from 30-60 seconds per stretch.
However, if your goal is to increase flexibility, then you may want to also look at adding proprioceptive neuromuscular facilitation (PNF) type stretching once or twice a week. The most basic form of this is to get into a stretch, and then isometrically contract (joint/muscle stay static, rather than moving) against the stretch. This is, however, an advanced stretching technique and should only be done after proper instruction. This study showed that PNF stretching also was the only one that produced performance enhancement.
Ballistic stretching (lean and bounce) type stretching has been much maligned, and is still contraindicated because of the tendency towards producing injury. (It tends to activate the stretch reflex in muscles and produce tears/strains). However, there is some indication that it may aid in jumping type performances.
Dynamic stretching before workouts (active movement that mimics the motions of the sport), and static stretching after (30 seconds, and I personally do a stretch and hold, relax, repeat even deeper type of cycle for each muscle) produce some of your best gains for the typical everyday person. PNF can get even greater gains if needed. However, it has not been proven yet (Despite claims) that any type of stretching produces better injury prevention or reduces muscle soreness after workouts. Also, static stretching before performance has been shown to negatively impact performance.