the difference between c# and c++ is like the difference between excel and lotus123. excel kicks lotus123's ass.
press the windows button on your keyboard. type "cmd". press return. see that black box that pops up? if you use c++ you will be working in that black hole. spend all day getting it to say "Hello, my name is bidask! Press return to continue." if you use c# you will be in the happy sunny windows world.
one you learn any programming language, you will be able to learn another much easier.
ib api provides documentation for visual basic, java and c++. ib does not provide documentation for c#, although i think it should. regardless, you can definitely connect to IB with c# and use its api.
they all ask for c++ because way back in the day c++ was the only modern language. once something is built using one language it's much easier to just continue maintaining it in the same language instead of doing a complete rewrite. but, the main reason is probably what i call the "c++ propaganda" - you can do things in c++ that you can't do in other languages and c++ is fast while other languages are slow. this is an endless debate in the programming world. only in very special circumstances are there "performance advantages" in any of the languages. i'm willing to bet that if there's a box score, c#, java and visual basic will have more points than c++. yes, that's right. visual basic kicks ass.
if your only goal is to build something that will connect with ibapi, the easiest way is to learn visual basic. you can build anything in visual basic that you can build in c++, and you will be able to do it in double, triple time. if you're looking for a job, however, then it's probably more practical that you go with another language. btw, it's doesn't make any sense that excel vba is acceptable in financial firms but visual basic isn't, but that's another story.
Quote from ZeroSumGame:
What are the differences between C# and C++
can a person who can program one also learn the other one with ease?
i thought the API in IB was C++ thats another reason i had C++ in my crosshairs.
Most funds, and trading floors that use their own proprietary software demand knowledge of C++ none C#, can someone give me some info as to why?