Keep a running list at home by writing things down as soon as you realize you need them. I keep a notepad with a magnet on the back on my fridge, so it's convenient. That way, you don't forget half of what you meant to write down.
I try to keep my list organized by what area of the store things are in. For example, I put fresh produce at the top, general grocery items below that, then pet-related items, then pharmacy items.
Because a forgotten shopping list is a frequent nemesis, I try to put my grocery list in my purse as soon as I decide I'll be going that day. I also try to remember to double check that it's there before I leave the house.