What is a bond price? A bond is an asset, and like any tradeable asset it has a price. If I hold $10K face value of a certain GM bond, then I would be willing to sell it at some price, which may be more or less than $10K. Whoever is willing to sell it for the lowest amount determines the price. The price is determined by the market, just as all prices are. It's what you can sell a bond for. Bond prices may be quoted in various funny ways, like as a discount or premium relative to the face value or as a premium over a treasury, but at the end it all should be converted to how much you have to pay today. In this case, it's how much you would pay today to get a set of future coupon and principal payments.
What is Yield to Maturity? A bond is a contract entitling you to a certain set of predefined cash flows. If you take that set of cash flows and discount them using a single rate at all maturities such that the discounted value is equal to the price, the single rate you have identified is the YTM. Mathematically, this is the same as finding the IRR (internal rate of return) of some set of cash flows. In this case the cash flows are the coupons and principal repayment.
Other bond concepts. Note that the other aspects of a bond, like maturity, coupon rate, and face value, are immutably written into the bond contract. All they do is define what payments the bond entitles the owner to. They don't say how much someone would pay today in order to be entitled to those payments. One can't know how much a future payment is worth without discounting. If you know the appropriate discount rate at every relevant maturity, you could calculate the fair price of a bond. That's the other direction. YTM looks at the market price and associated cash flows and imputes what single discount rate would make that price fair.
What is YTM good for? Recall what I said about IRR above. Why would anyone want to know what discount rate equates the cash flows of a project to its cost? Because it's an easy way to summarize how profitable the project is expected to be. YTM is a quick way to summarize the yield one would get on a bond if they were to buy it today and hold to maturity. If one bond has a higher YTM than another, than heuristically we believe it pays out more and should be associated with greater risk if the market is working properly. It can be used to compare bonds or to look at how changes in bond prices are affecting expected yields. Ask yourself, how would you compare two different bonds with different maturities and coupon rates? Which one is riskier or more profitable? The simplest way to summarize this information is with the yield to maturity. YTM is used frequently enough that when you just say a bond's "yield," people will assume you are talking about its yield to maturity.
What is YTM not good for? One thing to be wary of is using YTM as a discount rate. It looks like a discount rate but it works for that bond and that bond only. In reality each individual coupon payment has a true discount rate, and the discount rate at each horizon is different from each other horizon. Those are true discount rates that can be applied to any cash flow of similar risk to get the right price. We can think of YTM as some kind of average of those discount rates that produces the correct price for that bond only. You should never use it for discounting something else.