Which place is more likely to bring out the best in talented and motivated developers, small startups or large corporate groups? Well, it's a double-edged sword.
Usually at startups, the environment is more challenging. Stakes are high, but so can be the gains. No politics, no messing around, just one mutual goal. There is no place for dorks to hide. They are either not hired at all, or identified within days. A great working experience if the right kind of people get together. But then still nine out of ten startups fail (the number varies depending on the definition of "failure"), so it's quite likely that all those efforts are lost.
With big companies, this is less likely to happen. Heck, they even back doomed projects for years. This doesn't necessary imply that they are going support a winner project accordingly either, but at least it increases the chances they will. Unfortunately working in large companies can be cumbersome, especially for the more gifted employees. Committees that are unable to make decisions, projects stuck in the conceptual stage for years, proteges and "know-it-alls" meddling with your venture, and if there is no management buy-in, you are going to fail no matter how hard you try.
So what's the best place to work at? It might be a combination of both. A startup-like department or subsidiary inside a large organization. That alone is not enough, you have to be able to attract highly-qualified people, your management has to trust you and give you the time you need, and of course you still have get the job done. Then this is a likely scenario for joy of work and project success.