Charging for DLC also is kind of required. The game is released, and the money comes into the companies. The money goes where it needs to (big video games are expensive to make, and until a game is released it's nothing but expenses. You have to make up these expenses before you even think of doing anything else) and then quite a bit of the (probably veeery little) remaining money will then be funnelled into other projects which will hopefully make even more money and so-on.
The only way to justify the extra time spent working on the extra content would be for it to bring in income. DLC doesn't usually bring in more people purchasing the actual game itself. Sometimes a game doesn't quite cover it's expenses, and the DLC needs to be pushed out in order to ensure the companies involved aren't left with less money then when the started.
Of course if the game allows it, charging for DLC isn't the only option. Selling advertising space in the game which gets updated from xbox live or whatever internet connection could also work if the content is extra maps for a game like...I dunno, Rainbow Six (this also helps maintain the servers everybody plays on)
Still, you have to appreciate that these companies kinda are currently trying to avoid bankrupting themselves