This paper derives a simple, but informative, model of firm R&D to figure out key factors that determine firm R&D effort. The model suggests a demand-pull, technology-push theory of R&D by showing that a firms profit-maximizing R&D expenditure is determined jointly by both demand-side factors and technology-side factors. The former includes demand size (firm sales) and consumer preference over quality and price and the latter includes R&D cost structure or the production-cost effect of product R&D and firm-specific technological competence. In addition, the model shows that other things being equal, the stock of exogenous technological knowledge, including the firms previously accumulated technological knowledge, relevant to current R&D which is negatively related with current R&D effort. An empirical analysis of firm R&D intensities and technological capabilities of more than 1600 firms in nine industries across six countries provides supportive evidence for the theory. Further, the theory implies that R&D intensity or the R&D-to-sales ratio is independent of firm size unless firm size affects technological competence and that given consumer preference and R&D cost structure facing all firms in the same industry, the distribution of firm-specific technological competence among firms determines the distribution of firm R&D intensities within the industry.