The Solidity Contract-Oriented Programming Language Solidity is roughly speaking, an object-oriented language designed for writing Cryptographic Contracts.
A contract in the sense of Solidity is a collection of code (its functions) and data (its state) that resides at a specific address on the Ethereum blockchain (or any other Blockchain that supports Solidity, permissioned Eris chain etc). It is used to develop DApps
To get started with Solidity check out Solidity documentation