During the climatic battle, Banner says 'That's my secret. I'm always angry', and transforms into the Hulk. Does this imply that Banner learned how to control Hulk?
If this is the case, why did he transform during the Helicarrier attack?
My theory is this:
Banner can already control The Hulk at the beginning of Avengers
This is shown when he is about to show his 'secret' to Black Widow the first time. They are then interrupted (I forget by what already) before he can show her (presumably, his instant transformation). It is then shown (in a very epic fashion) that he can turn into The Hulk at will when the giant Chitauri is approaching them stating to Widow "I'm always angry".
However, when Loki was escaping and caused the floor to pop out from underneath him and Widow, he then loses this control due to the sudden nature of the event and therefore doesn't have full control over The Hulk, hence the battle with Thor.
It seemed to me that Banner's influence over the Hulk depended on how much control he had over the transformation.
The first time, he transformed because he was in pain, and Hulk was out of his control. The second time, he transformed by choice for a specific reason.
Helping things along was the fact that during the second transformation, Hulk had a lot of targets to take his rage out on - and no enclosed, confined spaces, either.
Think of it as the difference between a professional football player getting knocked down in a crowded nightclub, versus getting knocked down in the middle of a game. In the second case, he's prepared for it, and has a strategy for venting his anger in the next minute. In the first, he's blindsided.
As we saw in the end of the Incredible Hulk, Bruce banner has to have some form of calmness and meditation before he transforms, it's the difference between being calm and under a lot of stress and anger. Also he has to have a clear picture on his enemies and his allies before transforming
On the helicarrier they all fought with each other which caused stress and anger, and to top that Hawkeye blew up one of the engines which caused more stress and anger so the situation took advantage of Bruce, (Hulk controls Banner)
In the city we see him much more calm and at ease before transforming. Captain America tells him that now would be a good time to 'get angry' meaning to transform and Bruce responds by say his secret is that he is always 'angry' just another way of saying he can always transform at will and thus Bruce takes control of Hulk!
When Banner and Stark were in the lab, Stark poked Banner with something. Then in the same scene he said something along the lines of "I learned to control Iron Man with this thing (points to light on chest) - you can control the Hulk with something too." Banner then says something like: "That won't work for me." Tony then says something like, "Yeah you will, you'll see." Then Banner turns into Hulk on the ship, but whatever Tony did hadn't kicked in yet (at least not fully).
This is also why Tony knew that Banner would show up at the final battle , saying "Let me know when Banner gets here, okay?" to everyone's surprise, because he knew that Banner should be feeling the effects of whatever Tony did to him. Then, at the very end, Bruce and Tony ride off together - because now they are close friends who understand each other and share scientific acumen as well.
My impression was everyone kept assuming the hulk was something he was constantly fighting for control, and whenever he got angry enough to lose his focus he'd run wild, when the reality was Banner doesn't "lose" to the Hulk, he calls him out. Once he transforms he doesn't have a great deal of control over what the Hulk decides to smash, because like he keeps saying, it's 'another guy' taking over at that point, but the choice to change is Banner's.
It makes sense if you accept Banner the man isn't necessarily a great person to begin with, which I don't think he's ever claimed to be, and can get to the point where he actually wants to unleash the Hulk and let the consequences be damned. This also explains why he'd run off to hide in one of the most densely populated areas of the world, where the collateral damage would be massive if he ever let the Hulk out. It's not to get himself away from stress, it's to put himself in a position where the cost of calling the hulk would be more than he's willing to pay.
On the airship Loki manipulates them all into wanting to fight each other, which explains why Banner would let the Hulk come out to play, he wasn't losing control over a monster, he was just as eager to throw down as the Cap and Stark were a few seconds earlier.
Just a thought.
He learned to control Hulk, as you could see when he didn't try to smash all of the avengers along the enemy.
On helicarrier he still din't know "his secret", that's why he pummeled them all.
At first he tried to control his anger, on helicarrier it was proven impossible and as a completely wrong solution... After that he realized that he should stop trying to control himself and let his anger take over, which lets him maintain some control. Simply put he was never calm, he was just building up his rage, that's why he said "I'm always angry".
Thank you for your interest in this question.
Because it has attracted low-quality answers, posting an answer now requires 10 reputation on this site.
Would you like to answer one of these unanswered questions instead?