Extensions and remote applications can be used to accomplish many of the same functions; however, the way in which they are created and how they are implemented can differ dramatically.
For information about the technical differences between extensions and remote applications, see Understanding the Differences between Extensions and Remote Applications.