The <object> insert has several differences. If you are writing a flash application, you cannot embed an iframe. Therefore, using swf will work for these environments. The API also only supports IE8 and above because it will be implemented using postMessage . If you just embed the video, the <iframe> will work fine, but if you want to access the API, your users will have to have IE8 or higher.
<iframe> is the supported and preferred method of using YouTube. In addition to what has already been mentioned about the ability to play HTML5 (which is the biggest advantage), the API is richer and compatible with other other embedded content.
Greg schechter
source share