Wow... apparently there's plenty of opinions to go around on this. I don't totally disagree with these answers, but I see it from a different perspective:
First - terminology - see @Chris Shain's answer for In House/Consultant/Contractor for the stability vs. pay range - this is pretty much true, although you'll see some cases play fast and loose with terminology. For example the employee for a US defense contractor can usually expect to fall far onto the "in house" side of that spectrum in both stability and pay - but they are called a "contractor" in that their overall business operates like a contractor in the sense of selling services to the defense sector. Regardless of terms - the sliding scale is dead on.
Next, the questions:
Coding vs. building - Is this pretty much right?
Not in my experience. I've seen plenty of consulting gigs where coding chops were required and plenty of development jobs where integrating and assembling IT infrastructure was part of the job. It depends on the business you're in. Many consultants consult to software development teams where they help the team be more effective with tools - in which case they need to be uber-developers.
In terms of the work, I'd expect more of a tradeoff in:
a consultant has to sell more than a regular employee - he has to sell the fact that his ideas are good ideas, and in many cases there is an "upsell" need in his business. An employee working in an in house team, by comparison, gradually earns the trust of his teammates, so it's not as much of a "sell" as the eventual building of experience. And an employee rarely ends up having to continue to be charming just to retain employment. This is a basic personality trait that can be a big factor in job satisfaction.
a consultant (even more a contractor) is expected to come on board with the skills. As a hirer of consultants, I will send them back if I have to pay money for them to be educated on anything beyond the problem domain of my infrastructure and my security rules.
My main question is, how do these differ in terms of potential for career growth and quality of work?
Career growth - depends what you are aiming at. I believe the qualities expected for promotion are different and the learning objectives are different. Consultants tend to be very strongly technical with high communication skills. They get more money for being better at these things and training opportunities to facilitate it. However, the job is what it is - the hours, the travel - a company's business model is unlikely to change so the work life balance here is what it is and many consultant roles are high travel/long hours/high pay.
In in-house development there are typically two tracks - the ever-more senior guru of technical things, and the management track. In both cases, taking responsibility for greater scope, greater accountability and stronger communication requirements is the way to success. The technical track does it with strong technical communication, the management track does it with overall team/interpersonal communication about technical problems. The exposure to a diversity of problems/solutions tends to be smaller as the number of systems a single company makes or is involved in tends to be more limited. But the depth tends to be greater and you get to see a product grow up and evolve in a way you may not as a consultant. Promotion can be as much a part of assimilating company culture as execution on a particular project.
Is one easier to move up the corporate ladder in?
I'd say the bigger influence is the size of an organization and it's growth. If the company isn't growing, it's unlikely it will be promoting people.
Does one usually hit a higher salary eventually?
Yep- the higher the risk of unemployment, the higher the salary.
Is one generally more fun/exciting than the other?
It's definitely a case of personality fit and what you want. I've always been happy as an in house engineer. I have friends that love being consultants. They think I'm too static, I think they are too superficial. They see my job as boring because I'm stuck with the same people all day, year after year, I see their jobs as frustrating because you never have the time to really get to know people or see the whole project come to fruition.
It's what satisfies you most.