To elaborate on the answer by harleydonski, above, his number 1 and number 2 answers only apply to London transport, Transport for London (TfL). None of your stated journeys are in London, so my answers would have to be, for you, given what you have asked -
"Does buses accept only oyster cards, should i buy before i leave?"
No buses except those in London accept Oyster. No, don't buy before you leave. Buses are privatised in the UK - every company and every location is different, although there are a few major companies they operate each area differently, and there are many smaller ones who are all different. Please check locally. Outside of London, usually it is pay in cash to the driver when you get on, some accept contactless.
"Are B&B's better than hotels etc?"
I'm sorry - better for what? Front desk services? Breakfast? Parking? Bed comfort? Please say what you are comparing.
"Do taxis accept credit cards?"
Maybe. Outside London they are all controlled by the local Council which all have different regulations and different degrees of enforcement. Some may take cards, some won't - ask in advance.
Regarding the train travel - how comfortable and confident are you in researching and buying the individual tickets? I don't normally recommend a railpass but if you would not be comfortable doing the research and buying the tickets perhaps one would suit.