Answer:
In California - IMMEDIATELY, but it varies from state to state. If you are made to wait for your final check past the law limitation, you can file a claim to be compensated an 8-hour work day for each day until you receive it at your most current pay rate - with a max of 30 days. For example, if you earn $10.00 p/hr and you were fired on Monday but you didn't receive your pay check until Friday, you are owed $320.00 (minus taxes) for the 4 work days you had to wait. Accrued vacation counts as earned wages too and the same rules apply.
If you're in California, check the Related Link below, otherwise check with your state's site.