Talking to a friend about my wedding and out of the blue she asked if she could be my bridesmaid, I laughed but she was deadly serious and asked why I was laughing. She caught me off guard and I couldn't think of a nice way of saying no, so said "erm....if you like". She's now planning speeches and looking for readings! She is a good friend but not one of my best. I'll feel guilty if I take back the offer but resent her for putting me in the position. At the minute I feel I only have the options of either resentfully letting her be bridesmaid or telling her she can't in which case I know she will fall out with me.
What a pickle you are in! I find myself agreeing to things just to make other people happy all the time so I know exactly how you feel. What you need to remember here though is she invited herself, you did not ask her to be your bridesmaid. If you do not want her to be your bridesmaid then you need to tell her as soon as possible and as gently as you can, that after giving it much thought, you felt a bit pressured by her asking to be your bridesmaid and agreed for that reason but have now decided that you would prefer only to have your best friend/cousin/sister (delete as appropriate!) in the role. Soften the blow by asking her to do something else such as a reading during the ceremony and explain to her that you value her friendship greatly but felt pushed into a corner by her asking, when you had not yet decided who YOU would ask. If it makes it easier for you, tell her you can only afford to have two bridesmaids and you had already asked your two but didn't want to upset her when she asked to be your third.
Don't be pushed into making her your bridesmaid just so she can wear a fancy dress and have a starring role at your expense. If you feel resentful now then it could ruin your friendship. If you prefer a peaceful life however and do like her then perhaps having her help with the wedding planning will enable you to grow closer as friends. Just do what you feel is right for you. x