A missile is a flying device similar to a rocket. The primary difference is that a missile is designed not to achieve orbit, but rather ballistically crash into a target object from close to very long distances. While the primary purpose of Kerbal Space Program is to construct rockets for space transportation, it is very easy, and somewhat satisfying, to modify those rockets to become missiles.
Missiles are devices that use rocket engines to propel themselves upward, rotate towards a target, then accelerate towards that target. Missiles are used for precision strikes, long-range bombardment, and for all-out destruction. With the addition of destroyable facilities in version 0.25, missiles now can destroy targets on the surface of Kerbin and can be used (quite effectively) to destroy spent ships in orbit, debris on the ground, or to destroy your entire space center in a very short amount of time.
Missiles can be launched from the launchpad, from the runway, from an aircraft in the air, or for you die-hards, a rocket. Each has its own pros and cons.
From the Launchpad
Missiles from the launchpad start straight up, similar to ballistic ICBM's found in silos. The missile has to be rotated at least 90 degrees in the target direction to allow the missile to hit its target. Missiles launched from the launchpad are good for targeting the vehicle assembly building because it is a large and close target. They are also very effective when used to destroy the launchpad since a simple engine shutdown will cause the vehicle to come smashing down into the pad.
From the Runway
Missiles from the runway can be launched at a complete horizontal angle, or launched from triangular structural supports like standard missiles in use today. Launching from the runway gives the player a fast horizontal velocity in a short amount of time, but limits the amount of control.
Using decouplers and a lot of struts, it is possible to fire missiles from spaceplanes that are flying above your space center. Attaching the missile to the wings of an aircraft can allow the missile to use the speed gained from the aircraft engines, as well as its own engines, to quickly accelerate to ballistic velocity. They can also be used to have mid-air dogfights.
While extremely difficult and overcomplicated, it is possible to launch missiles from rockets. But seriously, who would launch a missile from a rocket? I mean, come on.
Missiles can be made in several ways. Some use lots of decouplers to create a magnificent explosion. Others use rockets to get a missile above their target then let gravity do its work. Missiles can also use rockets to propel it to its target or purposely overheat using engines.