The subtlety is in when two extensions are considered the same, in other words what are the morphisms of extension? There are different reasonable answers. For example a morphism could just be a morphism of short exact sequences (i.e. chain complexes). However the statement that $Ext^1$ classifies extensions uses a very particular kind of morphism of extension: only those morphisms of short exact sequences *which are the identity on A and B*. Let's look at extensions of $\mathbb{Z}/3$ by $\mathbb{Z}$, where the middle guy is a $\mathbb{Z}$. Suppose that the map from $f:\mathbb{Z} \to \mathbb{Z}$ is fixed and is multiplication by 3. Notice that there is a unique map $h: \mathbb{Z} \to \mathbb{Z}$ such that $f = hf$, namely $h=id$. This means that for any such extension, after you've identified the map $f$ as multiplication by 3, there is no choice for morphisms of extension. A map of these extensions has to be the identity on all three terms. In short, the extensions $\mathbb{Z} \to \mathbb{Z} \to \mathbb{Z}/3$, up to isomorphism fixing the first and last group, are in bijection homomorphisms from $\mathbb{Z} \to \mathbb{Z}/3$ which have kernel $3 \cdot \mathbb{Z}$. There are exactly two such homomorphisms, given by sending 1 to 1 or 1 to 2 in $\mathbb{Z}/3$. So there are two distinct non-spilt extensions. However you can also use $Ext^1(B;A)$ to get extensions up to the weaker notion of equivalence described above. Since Ext is functorial in both variables, you have an action by the automorphism groups of both A and B. Extensions up to this weaker notion are in bijection with equivalence classes in the quotient of $Ext^1$ by these actions. You can check in this case that the action by automorphisms of $\mathbb{Z}/3$ exchanges the two non-zero elements of $Ext^1(\mathbb{Z}/3, \mathbb{Z})$, and so there are exactly two extensions in this weaker sense: the spilt extension and the non-split one.