From the Twitter FAQ:
We like to keep it short and sweet! It also just so happens that 140 characters is the perfect length for sending status updates via text message. The standard text message length in most places is 160 characters per message. We reserve 20 characters for people’s names, and the other 140 are all yours!
See also the origin of the 160 character limit for mobile messaging.