I often wonder what the difference is: so from the BBC Cookery pages -
Bicarbonate of soda:
This white powder is an alkali (formally known as bicarbonate of soda) that, when combined with acid, produces carbon dioxide and tiny, fizzy bubbles.
Bicarbonate of soda is used in commercial cake mixes and flours to improve the effectiveness of another ingredient with which it is often combined – baking powder. When mixed with tartaric acid or lemon juice, it acts as a raising agent in baking.
Baking powder:
Baking powder is a raising agent that is commonly used in cake-making. It is made from an alkali, bicarbonate of soda, and an acid, cream of tartar, plus a filler like cornflour or rice flour which absorbs moisture.
The powder is activated when liquid is added, producing carbon dioxide and forming bubbles that cause the mixture to expand. For this reason, it is important to get your cake mixture into the oven quickly once the 'wet' ingredients have been added to the 'dry' ingredients.
Self-raising flour is made from plain flour combined with a small amount of baking powder.
Prepare it
To make baking powder, combine half a teaspoon of cream of tartar and quarter of a teaspoon of bicarbonate of soda. This provides the equivalent of one teaspoon of baking powder.
To make self-raising flour add one teaspoon (or equivalent homemade) to 110g of plain flour.