Question for you API gurus out there. Why would a person opt to use API calls to achieve the same thing as using controls that accomplish the same thing?

For example, why would a person write a chat application using API socket calls instead of simply using the winsock control that ships with VB?

I have heard that when you have API calls in your VB code your app could actually become slower (don't know how much).

I know there are times when calls to the API give your program more functionality and extended properties but why would a person make the effort to "re-invent the wheel"?

???

Thanks in advance,
Tobey