Do all Android apps run on all Android phones?

Yes, some Android apps only work on certain versions of Android. Or they require a certain screen resolution and thus, e.g., won't look quite right on, say, a Samsung Galaxy Tab.
Generally, the Market app recognises your phone, and it will show you only those apps that work on your device. But it is wise to read the detailled description and comments by users to make sure you get a working product. If you intend to buy an expensive app, check first if there is a trial version.