Desend by would be used when you are inside controlled airspace, and they want you to be below a certain level by a waypoint, usually because of traffic at a higher level coming the other way.
Cross would be used when crossing an airway or other airspace, and they would usually want to give you a set level for that.
Cap 413 chapter 3 for level by which is just general level reporting
Cap 413 chapter 7 for cross at which is flights crossing airways