We study the general and connected stable ranks for C*-algebras. We estimate these ranks for pullbacks of C*-algebras, and for tensor products by commutative C*-algebras. Finally, we apply these results to determine these ranks for certain commutative C*-algebras and non-commutative CW-complexes.Stable ranks for C*-algebras were first introduced by Rieffel [16] in his study of the nonstable K-theory of noncommutative tori. A stable rank of a C*-algebra A is a number associated to the C*-algebra, and is meant to generalize the notion of covering dimension for topological spaces. The first such notion introduced by Rieffel, called topological stable rank, has played an important role ever since. In particular, the structure of C*-algebras having topological stable rank one is particularly well understood.Since the foundational work of Rieffel, many other ranks have been introduced for C*algebras, including real rank, decomposition rank, nuclear dimension, etc. In this paper, we return to the original work of Rieffel, and consider two other stable ranks introduced by him: the connected stable rank and general stable rank. The general stable rank determines the stage at which stably free projective modules are forced to be free. The connected stable rank is a related notion, but its definition is less transparent. What links these two ranks, and differentiates them from the topological stable rank, is that they are homotopy invariant.This was highlighted in a paper by Nica [13], where he emphasized the relationship between these two ranks, and how they differ from topological stable rank. Furthermore, in order to compute these ranks for various examples, he showed how they behave with respect to some basic constructions (matrix algebras, quotients, inductive limits, and extensions).