A bond is a form of debt with which you are the lender instead of the borrower. Bonds are contractual loans made between investors and institutions that, in return for financing, will pay a premium for borrowing, known as a coupon. Additionally, the bond's face value is returned to the investor at maturity.
The guarantee of payback and all coupon payments relies solely on the ability of the borrower to generate enough cash flow to repay bondholders.
Stocks are a form of ownership; they represent participation in a company's growth. Generally, investors are given no promises about returns of the initial investment. In fact, the profitability of the investment depends almost entirely upon rising stock price, which, at the most fundamental level, relates directly to the performance and growth (increasing profits) of the company.
So this leads to the original question: which security is better? The answer is neither. Stocks and bonds both have their pros and cons depending on what you are looking for.
For example, risk-averse investors looking for safety of capital and who prefer a known periodic payment structure (i.e. coupon payments) for a limited time frame would be better off investing in bonds. On the other hand, investors who are willing to take on greater risks than bondholders and who would prefer the benefit of having partial ownership in a company and the unlimited potential of a rising stock price would be better off investing in stocks.
However, the disadvantage of stocks versus bonds is that stocks are not guaranteed to return anything to the investor while the coupon payments and principal of bonds are. Thus, the possibility for high returns is greater with stocks but so is the possibility of losing money.
For most investors, a combination of stocks and bonds is the best situation. By diversifying your investments and putting some money into both stocks and bonds you ensure some safety while leaving some opportunity for above-average returns in your stock investments.