Cut the chicken (skinless) into pieces of your choice and wash them well. Now take a bowl and mix the chicken pieces with a cup of yogurt. Cover the mixture and place it in the fridge, while preparing the rest.
Take a medium sized pot, preferably heavy with a slightly rounded bottom. Add soybean oil to the pot and heat oil (medium heat) for a minute or more. Then add the sliced onions, cinnamon, cardamom and bay leaf. Wait until the onions turn brown.
After the onions turn a little brownish add the garlic, ginger, onion paste and rest of the garam masala. Within a minute add milk and salt.
Add a cup of water and stir in medium heat for 2-3 minutes.
Ad marinated chicken pieces. Stir often until the chicken is cooked through. Don't let the chicken turn brown. It'll take aboud 25-35 minutes. After the curry is cooked you can serve it with pilao rice.