Before you begin, it is essential you know what version of Joomla! you are using. This is especially true if you are changing a major version. If you are already confused or don't know what a major version is, you should read more about the release and support cycle of Joomla! CMS Versions.
Joomla! is released with the following version designations, [major].[minor].[maintenance]. So version 3.1.5 is Joomla! major version 3, minor 1, and maintenance release 5. Since version 1.7, the updating and upgrading of Joomla! are built into the administration interface as a component. The terms updating and upgrading might be used interchangeably. In many ways, updating and upgrading are alike, but you should pay very close attention to the details of an upgrade. Upgrades would be defined as a major.minor(2.5) to a different major.minor(3.1) version or a major.minor(3.0) to a major.new minor(3.1).
Updates are an easy update to the next maintenance release, for example version 2.5.13 to version 2.5.14. This would be a maintenance release of the 2.5 version.
Before you upgrade, you will have to do some homework. The information you will need includes the following: template compatibility, installed extensions compatibility, will the positions of modules change with a new or upgraded template, and should this be a 'live'(www viewable) upgrade or an 'offline'(localhost, subdomain or subfolder) upgrade. Above all, realise without the correct preparation and knowledge, you may break your 'live' site.
Upgrading 1.6.5, 1.6.6, 1.7.x, 2.5.x to 3.x is covered by the following article.
Upgrading 1.6.5, 1.6.6, 1.7.x, to 2.5 is covered by the following article.
You must upgrade to Version 1.7 first if you are on version of 1.6 below the maintenance release of 1.6.5.
If you are using Version 1.5 this requires a migration because of Database changes.