We study the efficiency of oligopoly equilibria in a model where firms compete over capacities and prices. The motivating example is a communication network where service providers invest in capacities and then compete in prices. Our model economy corresponds to a two-stage game. First, firms (service providers) independently choose their capacity levels. Second, after the capacity levels are observed, they set prices. Given the capacities and prices, users (consumers) allocate their demands across the firms. We first establish the existence of pure strategy subgame perfect equilibria (oligopoly equilibria) and characterize the set of equilibria. These equilibria feature pure strategies along the equilibrium path, but off-the-equilibrium path they are supported by mixed strategies. We then investigate the efficiency properties of these equilibria, where efficiency is defined as the ratio of surplus in equilibrium relative to the first best. We show that efficiency in the worst oligopoly equilibria of this game can be arbitrarily low. However, if the best oligopoly equilibrium is selected (among multiple equilibria), the worst-case efficiency loss has a tight bound, approximately equal to 5/6 with 2 firms. This bound monotonically decreases towards zero when the number of firms increases. We also suggest a simple way of implementing the best oligopoly equilibrium. With two firms, this involves the lower-cost firm acting as a Stackelberg leader and choosing its capacity first. We show that in this Stackelberg game form, there exists a unique equilibrium corresponding to the best oligopoly equilibrium. We also show that an alternative game form where capacities and prices are chosen simultaneously always fails to have a pure strategy equilibrium. These results suggest that the timing of capacity and price choices in oligopolistic environments is important both for the existence of equilibrium and for the extent of efficiency losses in equilibrium.