C# is Windows only (Mono sucks), and Python is cross-platform. Also Python would be better for a beginner (which OP clearly is).
And instead of C#, OP, you should try and learn VB.net, cause it can produce the same apps as C# (since both C#, and VB.net are based on .NET), and is far easier.
Whenever I think about C#, sophisticated and sometimes elegant software and tools come to mind.
Whenever I think about Python, script kiddies and wannabe 'hackers' come to mind.
C# is so much more powerful than Python in every way, shape or form. I'd suggest you go down that path.
Python is more like scripting, it's not real programming stuff.
I disagree :
1) Python might be easier to learn,But if you master C# a transition to C++,Javascript,etc will be easy (it was for me at least) So there you have to weigh the pros and cons.
2) I would recommend C# for creating bots any day over VB,Yes they are both built upon the .net framework,But true threading in VB can be a pain and C# is so much more powerful in my opinion.
3) I have been writing bots for a little over 2 years and i have never had anyone ask for a cross platform bot or IM tool.I do agree Mono sucks,But the OP asked what would be best for creating bots.
2) Why do you say C# is more powerful than VB.net? Both produce the same executables, and both are based on the same library.
3) Yeap nobody asks for cross platform bots, but it sure is an advantage. Bots are be more efficient/quick in Linux, than Windows, even with low end PC's, with little RAM.
Python is more like scripting, it's not real programming stuff.