This depends entirely on your load. Is it a constant, nearly resistive load? Is it a switch-mode converter of some sort? Does the load draw current in bursts?
Size
Assuming a constant resistive load you can use a relatively simple equation deriving from the equation for charge in a capacitor to calculate the size needed. You need to know (1) how much current you will be drawing from the capacitor and (2) what voltage ripple you can tolerate. The equation is C=I*dT/dV where I is the constant current you will be drawing constantly, dV is the allowed ripple voltage (10% is the usual, so whatever 10% of your input voltage is) and dT is the period of your input (generally 1/F).
This page has a good explanation of this derivation and examples: **broken link removed**
I'm not fully sure, but you may be able to say that dT is the period of your rectified waveform, which would be 1/(2*F). This would reduce the size of your capacitor I believe. In addition, you should add some "fudge factor" to your capacitor size...like making it 20% or so larger. Also keep in mind that if you stop drawing current, the ripple voltage will disappear and you will have the full rectified voltage on the capacitor. Your input regulator will need to handle this.
Voltage rating
Your capacitor should be able to handle the full voltage it could ever see. Assuming a no load situation, your power capacitor will see the peak voltage coming out of your rectifier. Add 30%-50% to that voltage as a fudge factor/derating and you should be good. Remember that 120VAC is not 120V peak. Its more like 150V or more. If you do not have a sufficient voltage rating on your capacitor, it could fail spectacularly.
Ripple current rating
One thing that can be overlooked easily is the ripple current through the capacitor. Ripple current is not the amount of current you are drawing from your supply. Ripple current is the net current that results from (1) your circuit drawing current and (2) the rectifier supplying current into the capacitor. I think of it as water going in and out of a tank. If you put water in a tank at the same rate as you pull it out, you have zero ripple current. However, if you take water out at a constant rate and have the tank refilled periodically, you will have some change in water level of the tank (representing ripple current).
If you have too much ripple current, the capacitor could heat up and eventually fail (quite spectacularly, depending on the type of capacitor). I've generally estimated this by simulation (LTSpice is free), but I'm sure you could derive the equations for it with some googling. A lot of companies provide application notes about this kind of thing because they want you to buy their capacitors. Here's one by panasonic: **broken link removed**
Generally speaking, if you have a low-current and low-frequency application (250mA, 60Hz, etc), this is not a serious issue.
ESR (Equivalent series resistance)
A capacitor has its own resistance on the inside due to various physical factors. Certain capacitors (such as those made of Tantalum) have extremely low ESR, but are more expensive. Others, such as aluminum electrolytics, are significantly cheaper, but can have a much higher ESR. If your application is low ripple current or low frequency, this might not be too big of an issue. However, if you have a high frequency and/or high ripple current, the ESR could make your capacitor dissipate a significant amount of power (P=I^2*ESR where I is the ripple current), heating it up and causing it to fail.
What is usually done
From what I've seen, most power capacitors are aluminum electrolytic since they are operating at a low frequency (so ESR isn't too big of a problem). They are also rather large (>1000uF in many cases). The usual objective is to choose the cheapest capacitor that won't fail during the lifetime of the product while still meeting the minimum specifications for allowable ripple voltage and such.