A tensegrity framework consists of bars which preserve the distance between certain pairs of vertices, cables which provide an upper bound for the distance between some other pairs of vertices and struts which give a lower bound for the distance between still other pairs of vertices. The present paper establishes some basic results concerning the rigidity, flexibility, infinitesimal rigidity and infinitesimal flexibility of tensegrity frameworks. These results are then applied to a number of questions, problems and conjectures regarding tensegrity frameworks in the plane and in space.