A better dichotomy isn't start-up/big-co: it is is whether you're looking to do fairly simple, business-oriented programming or CS-focused programming. Or whether you'd prefer to work in an environment that's demanding in terms of output but flexible in terms of work-style or one that's strict 9-5 (no overtime, but no flexibility either).
The stereotype is that big-companies are "9-5, business centered" and start-ups are "demanding but flexible, tech centered". Yet there are other combinations available ("9-5, tech centered" -- think Intel -- "flexible, business centered" etc...) -- in both start-ups and big companies.
Better advice is to work on something you're passionate about in an environment that gives you the chance to gain skills/experience you won't otherwise: once you find such a place, it shouldn't matter whether it's a start-up or not. You'll always have time to make gobs of money later (whether from options at a start-up or bonuses/salary/stock at a big-co).
Essentially: don't work at a start-up for the sake of working at a start-up. Starting your own is a different option -- and isn't the same as joining an existing one; joining a start-up will give you exposure to the "whole picture", but it may also not give you a chance to learn technologies you could put to use at your own start-up.