i air spray my computers every three or four months, especially the antec 900, it moves a lot of air and accumulates lots of dust. but i also have makeshift filters for the fans, so that helps a bit. they sell these cans at best buy, walmart, etc.
i've used the vacuum when air spraying to catch the dust bunnies, that way they don't settle back in the computer case. don't use brushes, and only from a distance. you don't want to suck in a loose cable or jumper.
i took apart a two yr old computer because it was constantly rebooting. turns out the cpu heatsink was caked in dirt and no air was getting to it causing it to overheat. for this i took it off and washed it by hand, then applied fresh thermal compound. so yeah, you need to clean them periodically.
if you have pets, then i would recommend you clean your computer at least once a month, if only just spray and vacuum. once you get a feel for how dirty it gets, you can adjust your cleaning schedule from there.
as for the keyboard, just turn it over and spray some air through the keys. if its really dirty, like if you eat at your desk you can wipe it down with some cleaning solution and a lint free rag and/or q-tips, or they should have something at your local electronics store for this too but is not necessary. iff it's really really nasty, i've heard of some people running them through the dishwasher, i would just buy a new one.