The meanings overlap somewhat, but in US English, "garbage" generally means damp food waste, that will rot and stink and attract rats. "Trash" means dry waste like paper or packaging or discarded toys. Even before the days of recycling, many communities handled trash and garbage separately. The terms got to have an almost-legal meaning. You had to "separate your trash from your garbage" and "not put garbage in the trash."
"Rubbish" is understood in the US but used much less often than "trash" or "garbage."
"Litter" implies that something is scattered where it doesn't belong. It often means trash or rubbish that is just tossed on the side of the road, or on the sidewalk. Leaving litter is called "littering" and a person who litters is a "litterbug." It doesn't necessarily mean trash, though. You could say "his desk was littered with papers" or "the kids' room is littered with toys."
Also, "refuse," accent on the REF, REFuse, is a noun. It is general, somewhat formal terms for something that is being thrown away. So is "waste." Speaking generically of garbage, trash, and recyclable material, a town might refer to "waste pickup."