They're both waste, but rubbish is the word British speakers reach for, while garbage is standard in American English. Rubbish has an extra life as slang for nonsense — "that's rubbish" — a sense garbage doesn't share in quite the same way.
The core difference
Rubbish is the everyday British term for waste (and for nonsense), while garbage is the standard American word for waste, especially food scraps and household refuse.
- rubbish — waste material, chiefly British; also nonsense: Take the rubbish out before the bin men come.
- garbage — waste material, especially food scraps and household refuse: Take the garbage out before the truck comes on Tuesday.
How to tell them apart
The simplest test is geography: British English defaults to rubbish, American English defaults to garbage. Both words can also mean something of poor quality — a rubbish film or a garbage sequel — so that overlap won't help you tell them apart.
Rubbish carries one extra job that garbage rarely does: calling out nonsense. "Don't listen to him, he's talking rubbish" has no natural garbage equivalent, so if you hear the word used for an argument rather than an object, it's almost certainly rubbish.