Joomla! is developed using a fixed release cycle. Every six months, the Joomla! Project releases a new minor or major version of Joomla!. (Joomla!'s version format is [major].[minor].[maintenance].)
Each version of Joomla! is supported by the Joomla! Project for a limited amount of time. There are two classifications for support: standard support (STS) and long term support (LTS). Every third release will be assigned long term support.
Please note that both STS and LTS releases, once they have reached the GA (General Availability) status, are fully functional and ready to be used in production environment. The disadvantage of using STS releases is that you will need to update your installation of Joomla! every six months, while the advantage is that you will have access to new features and extensions earlier.
Generally, the first STS release after an LTS release indicates the beginning of a new major release cycle. This STS release introduces fundamentally new features and changes that break compatibility with the previous LTS. One more STS release follows (usually compatible with the first STS release), and the release cycle is finished by the release of an LTS release which finalizes of the work of the two STS releases. The three releases in one cycle will usually be numbered [major].0 and [major].1 (STS) and [major].5 (LTS). For example, the STS release 3.0 will include breaking changes from 2.5, and 3.5 will include matured versions of the changes in 3.0 and 3.1.
Usually, there will be a migration path (an officially supported way of migrating to the next version) between two LTS releases (from x.5 to (x+1).5, for example) and between an LTS release and the STS releases in its major release cycle (from x.1 to (x+1).5, for example), but not necessarily to the following STS releases (from x.5 to (x+1).0, for example. Although in the case of 2.5 to 3.0, there is a 1-click core migration).
For more information, see the official Development Strategy.