I agree with the other guys -- crystal malts will take you a long way towards more grainy flavor and mouthfeel. And since crystal malts range in color from nothing up to the hundreds of Lovibond, you can use whatever color you need to be appropriate to style.
For amber to dark beers, you can also use more chocolate malt, roasted barley, and darker roasted malts, to give you more malt character.
It is also a good idea to always use extra light malt extracts, never the amber or dark versions. If you want a dark beer, it is important that you get all your color from steeping dark malts, not from darker extracts.
And whenever you are ready to take the plunge into mini-mashing or full mashing, then the options become limitless.