The HTML 5 tag will be your best bet for iPhone, since Flash is not supported, but keep in mind that HTML 5 is not yet supported on most computers on the Internet, because the hippo of the browser world (Internet Explorer) does not yet support it. This will change with IE9 when it is released, but there will still be many people / entities that will not be updated.
If you care about an audience that does not support HTML 5, you will need to use an alternative method, such as Flash or Silverlight. Fortunately, the audio tag takes this into account, allowing you to specify alternative content if the tag is not supported.
<audio src="blah.mp3" controls="controls"> Put alternate content here </audio>
source share