<p>I am seeing strange behaviour with the flash.media.Sound class in Flex 3.</p>

<pre><code>var sound:Sound = new Sound();
try{
sound.load(new URLRequest("directory/file.mp3"))
} catch(e:IOError){
 ...
}
</code></pre>

<p>However this isn't helping. I'm getting a stream error, and it actually sees to be in the Sound constructor.</p>

<blockquote>
  <p>Error #2044: Unhandled IOErrorEvent:.
  text=Error #2032: Stream Error.   at... ]</p>
</blockquote>

<p>I saw one example in the Flex docs where they add an event listener for IOErrorEvent, SURELY I don't have to do this, and can simply use try-catch? Can I set a null event listener?</p>

You will need to add a listener since the URLRequest is not instantaneous. It will be
very
fast if you're loading from disk, but you will still need the Event-listener. 
There's a good example of how to set this up (Complete with IOErrorEvent handling) in the
livedocs
.