VB and C# are meant to be able to produce the same things, still C# is more strict that VB. That is, C# puts an enphasis in corectness of the code, while VB (and VBA for that sake) may let you hit yourself easier. Also, VB is meant for short programs while C# is meant for large libraries. In the past VB was better for interop than C#, but this is no loger true, today it's a draw.
For me personally, I think VB is easier to learn, but you should not stay with that, In my case learning C# improved my skills a lot, due to the correctness of C#. It's easier to go from C# to VB that the other way around, since you will be used to what C# enforces, and then do it right on VB afterwards. On the other direction, you will miss the conversions of VB in C#, but it's not big issue. About the "OOP" mindset Cerebrus mentions when says: " It is the transition to the OOP mindset that is the real hurdle, IMHO. " If you learned Java, it shouldn't be an issue. But if it is, then don't use OOP, if that's your case then VB should do, but beware of letting it become spaghetti, not that you can't do spaghetti with C#, but that C# is more likely to make you think about your spaghetti. Lastly there are some statements unique of VB or unique of C#, for example C# dosn't have "with", VB.NET allows you to write event handlings in the method while in C# they must be mapped in code (the Visual Studio designer takes care of this), C# includes bitwise operators and pointers (neither VBA or Java have those), VB has the "My" namespace that will make some tasks easier in desktop apps. Hmmm... may be you are not aware of namespaces, I think you can guess what they are, they are for grouping names, just like you can have two tables with the same name as long as they are in different databases. Namespaces are similar to packages in Java. C# and VB are growing fast compared to other languages, there is fear to make them too extense to learn... so, good luck. On Sep 12, 10:45 pm, Steve <[email protected]> wrote: > Hello, > I've been developing Access databases and have been wanting to start > digging into .net. I want to design applications to use along with a > SQL database. I have a little bit of a Java background and am fairly > comfortable with VBA. Does VB or C# make more sense for me to learn? > From what I can tell, either one will give me about the same results, > but I thought I'd ask in case there is something I'm missing. > > Thanks!
