Meta Stack Exchange is where users like you discuss bugs, features, and support issues that affect the software powering all 158 Stack Exchange communities.

What is meta?
Here's how it works:
  1. Any Stack Exchange user can ask a question
  2. The community provides support, votes on ideas, and reports bugs
  3. Your voice helps shape the way Stack Exchange operates

According to Lang Pop (via this question), C# is not a very popular development language. Why then is there a seemingly large percentage of the questions being asked here related to C#?


migration rejected from Jun 4 '14 at 12:02

This question came from our site for professional and enthusiast programmers. Votes, comments, and answers are locked due to the question being closed here, but it may be eligible for editing and reopening on the site where it originated.

closed as off-topic by Danubian Sailor, Martijn Pieters, hims056, Azik, ChrisF Jun 4 '14 at 12:02

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "This question pertains only to a specific site in the Stack Exchange Network. Questions on Meta Stack Exchange should pertain to our network or software that drives it as a whole, within the guidelines defined in the help center. You should ask this question on the meta site where your concern originated." – Danubian Sailor, Martijn Pieters, hims056, Azik, ChrisF
If this question can be reworded to fit the rules in the help center, please edit the question.

It's all a conspiracy so JS can get to 100k... – beggs Sep 15 '09 at 17:13

35 Answers 35

My theory: because the bulk of the people here came from Joel and Jeff's original audiences.

These are (I figure) basically Windows people, so a lot of the questions will be Windows or .NET questions. C# or VB.NET follows from there.

Also, as a new language and as a language that's undergoing active change (e.g. ASP.NET MVC), there'll be a lot of things that are new to people, so there'll be a lot of questions. A mature language won't raise too many questions.

Personally (as a Win32, C#, MSSQL programmer) I like this. I also like that people on other languages/platforms (Python, Ruby, drupal, etc.) are starting to come here too.


I would disagree with the assessment that C# is not a popular language. Pretty much all of the Microsoft-based businesses (barring the games industry and some areas of the hard-core financial industry) I come into contact with are using it (or in the process of migrating to it from vb/

It might be popular for MS development (but still not as popular as VB) but it isn't a very popular language outside that realm (nor is it meant to be). – Robert Gamble Dec 9 '08 at 14:40
Given that it's a pretty huge realm though, there's a big difference beteween "not very popular outside MS development" and "not very popular". – Jon Skeet Dec 9 '08 at 14:45
Agreed. I wouldn't say that it is "not very popular" but I wouldn't say that it is "very popular" either (yet), but it seems to be getting there quickly. – Robert Gamble Dec 9 '08 at 14:51
Actually I'm really surprised in large companies how popular VB is... Well, Excel VBA... At my current job we have a tons of VBA code, and I don't mean VSTO, I mean VBA, sitting inside Excel spreadsheets – Chris Dec 9 '08 at 15:56
Aaaaand the answer is?... This is good comment, C# is by far the most popular MS programming language. But this doesn't answer the question at all. – OscarRyz Dec 9 '08 at 16:17
Erm. My answer says that based on my experience a lot more people appear to be using C# (than is indicated by the Lang Pop survey) and that doesn't answer the question? Strange. Very strange. – Andrew Rollings Dec 9 '08 at 16:25
@Oscar: Any sources that support your claim? In my experience C# still trails behind VB for MS development and I haven't seen any studies to the contrary. – Robert Gamble Dec 9 '08 at 16:55
@Andrew: There are over 6500 questions tagged C#, by far more than any other language; C# is certainly not the most popular language by any stretch but appears to be so on this site. Simply saying that C# is more popular than thought doesn't answer which is why this site is more skewed towards C#. – Robert Gamble Dec 9 '08 at 16:59
@Robert Gamble: this is like asking why there are so many gamblers in Las Vegas. – Steven A. Lowe Dec 10 '08 at 0:28
@Steven-A-Lowe, exactly. Actually, I think it is even worse than that. Like it or not there are a couple really popular open source applications written in C#, like Banshee. – BobbyShaftoe Jan 9 '09 at 0:07
Maybe C# is harder to work out... hence more questions! – Harry Jan 31 '09 at 12:54

It might simply be that the statistics on Lang Pop is not accurate. It shows C in many graphs visualizing search engine statistics as leading, but how about search engines that filter away the # character?

A Yahoo search on "c programming" (that query is used on Lang Pop) contains hits on C# and c++ programming as well.

It's interesting to see how few people question the actual data shown on Lang Pop. Never trust statistics you haven't faked yourself ;-)

Another fact of course it that languages such as C and C++ have a much longer history than rather new languages as C#. Therefore it would not be surprising to have more hits on C/C++ than on C#.

That there are so many questions on C# here on SO (and other forums) might be related to the fact that it is a young language, but also to the fact that there is quite an active community for C# on the web. I have the feeling (but I might be wrong) that this is not so much the case for C (I imagine the typcical C developer will stick to his man pages ;-).

While using web search counts probably isn't a great metric to determine actual market share, the LangPop results are in line with other sites such as TIOBE Index which are smart enough to properly search for and categorize various languages. – Robert Gamble Dec 9 '08 at 14:45
According to the TIOBE web site ( they also use the search query +"<language> programming". Such a query boosts C (because the query results contain hits for C# and C++). – 0xA3 Dec 9 '08 at 14:52
At the bottom of the LangPop site, they discuss this exact problem. I wonder too if C isn't artificially high and stealing some C++/C# hits? – GalacticCowboy Dec 9 '08 at 15:01
C almost certainly is unfairly inflated but by how much is the tough question. A google search on "C Programming" comes up with 2.1M hits, out of the first 100 6 were for C++, and 3 were for objective C, none for C#. A random sampling of later hits showed a similar trend. – Robert Gamble Dec 9 '08 at 15:38
Searching for +"C Programming" -"C++" -"C#" -"Objective-C" comes up with 1.2M hits, just under half of "C Programming" but excludes sites that discuss multiple languages including C. "C# Programming" comes up with 525,000 sites which makes it 2-4 times less "popular" than C. – Robert Gamble Dec 9 '08 at 15:42
TIOBE has C at 16% and C# at 4.6% so it looks like the bias towards C is on the higher end of the scale there but the effect on C# looks to be pretty non-existent. – Robert Gamble Dec 9 '08 at 15:45
The Lang Pop site has serious issues. Notice that the language with the fewest Amazon hits is C++. My quick run of the numbers put C++ at just over 8,000 hits. C had over 17,000 hits but C++ and C# also came up. Hard to put much weight to their other numbers, with the quality of the book chart. – Philip T. Dec 9 '08 at 20:32

Hi, I'm the creator of

A few comments:

  • There are indeed problems with C, C# and C++. It is noted on the site - you did read the text, instead of just looking at the graphs, right? Suggestions on how to get around the problem are welcome, of course.

  • The Amazon results are indeed incorrect. One of the problems with multiple data sources is that on any given day, one of them is often acting up, sometimes in subtle ways. For instance, today for some reason Yahoo is returning very few results for delicious. Working on correcting it.

  • Longevity & Amazon: yeah, languages that have been around longer are more present in lists like books. That is one measure of popularity, though, isn't it. Now that I have a year + of data, perhaps I will start adding some information about deltas in order to show what's been growing lately.

That said, I don't think the statistics are "worthless" as some commenters suggest. Do I think they're highly accurate? No, but it's not possible to be highly accurate with those kinds of data sources either. And I still think they are generally pretty good data.

To answer the original poster's question, I don't think that C# is exactly "unpopular" - if you correct for the Amazon results (should have those done shortly), and for some open source bias in using Freshmeat as a data source, C# does ok. And naturally, lots of Windows people seem to be on this site, so that explains why it's relatively more popular here.

Thanks, Dave

Update: I found what changed with the Amazon results, but like I said above, Delicious has some problems. "c++ programming" returns zero results, and the following two pages return identical counts:

Update: I went ahead and used the Delicious results even though it can't tell the difference between C, C++ and C#.

A more reliable pair of sites to search would be Dice and CareerBuilder. And these sites almost certainly have a search that distinguishes C#, C, C++, etc. – Tom A Jan 31 '09 at 2:26

C# is currently a logical choice for professional software development, and as such it will often be the first language of a lot of new and inexperienced developer, who will be asking more questions.

Also, the language itself is relatively new and still updated quite frequently, so some concepts may not yet be so widespread and will be new even to more experienced developers.

I don't mean to imply it's a "language for newbies" - it's just a common choice. Therefore I also agree with many of the posts above that say C# is probably a lot more popular than some statistics imply.

Why is this getting so many down votes? – Robert Gamble Dec 9 '08 at 14:37
Agreed, I think it's one of the most logical responses here. C# was my first language; I would have loved this site. – J Cooper Dec 9 '08 at 14:43
Because people think I implied "N00bs", probably ;-) – MadKeithV Dec 9 '08 at 14:43
Maybe MadKeithV didn't mean to offend. So I upvoted this :) – Andrei Rinea Dec 9 '08 at 14:57
This is probably the most accurate response. There are always lots of budding new MS developers out there and most of the ones nowadays are going to be learning C#. Since the language is newer and still changing quickly there are going to be lots of questions asked by lots of people. – Robert Gamble Dec 9 '08 at 14:58
I guess some people got offended by the word "inexperienced" and took it to mean that only inexperienced developers would use C# so they downvoted the question based on what they thought they read instead of what the answer actually said. – Robert Gamble Dec 9 '08 at 15:01

Because this site is built in C#, founded by guys who program in C# or are in the Microsoft sphere, beta-tested mainly by guys who program in C# or are in the Microsoft sphere, and therefore there was already a lot of C# stuff on here when the site went public. So C# programmers come here because they know they'll get answers, and they'll tend to find out about it from like-minded people in the C# community.

There's no intention for SO to be language-specific as I understand it, but it makes sense that you'd get the ALT.NET crowd here first of all given that Jeff Attwood is behind it.


The LangPop results are highly questionable (Amazon has zero books about C# or C++?). Clearly several of the search engines they are using aren't up to handling symbols in the search string.

Further, they use several *nix-friendly/MS-adverse websites (slashdot, google code), but few MS-friendly website (why freshmeat but not CodePlex?).

And, many of the measurement are historic (people have been writing about C++ for 15 years, Java for 10, but C# for only 5).

Jeff & Joel main audience are MS-centric, and they were the initial users here. Especially since this is one of the first major websites to use ASP.NET MVC.



SO has a strong Microsoft heritage. Since Jeff is a C# dev.


Probably because many people use it to learn programming in the first place. At least many lack the skill of searching for information before asking questions.


All of those charts could be considered flawed, but taken as a whole I imagine there's a couple of factors maybe.

  • It's relatively new compared to Java, C, Perl and SQL

  • It's relatively niche compared to the more utilitarian javascript, sql, html, xml

  • Like it or not C# basically means Microsoft stack which does present a barrier of entry to many, where LAMP stack languages are going to be more popular with the kind of users who're going to be running more searches (small shops, students, newbie coders)

  • The world is still plagued by VB developers who evidently need motivation to move on

"plagued by VB developers"? Give me a break... – Richard Everett Dec 9 '08 at 14:35
(dons flamesuit) yes, plagued - in eight years of my career I have yet to meet a colleague who chooses VB out of preference who was worth a damn at doing their job, ymmv – bananakata Dec 9 '08 at 14:39
Ahh, gotta love a good VB flamethrowing – chills42 Dec 9 '08 at 14:44
Hehe... VB was good for certain purposes in its day. That day is over :) (And it was January 31st 1994 - I remember it well!) – Andrew Rollings Jan 18 '09 at 2:38

I think there are a few factors that may cause the discrepancy:

  • The metrics used to measure popularity are inexact. The different sources of measurement are skewed in particular directions.
  • The .NET audience was alerted to SO from its inception and so SO may likewise be skewed.
  • Older languages already have support forums (SQLServerCentral is much better for DB/SQL related issues).

C# is being widely adopted. It's the language of choice for most of the places I work with. Look on the job boards - a significant percentage of jobs are for C#.


C#'s popularity on StackOverflow may have started because of Joel & Jeff's heritage.

I believe that it may continue as part of a feedback loop. Developers find StackOverflow through a C# web search are more likely to ask C# questions. More hits for C# questions. Etc.


Looking over Lang Pop, it seems pretty much useless. The statistics vary widely with several languages jumping all over the place from being one of the most popular in some of the lists, to hitting rock bottom in others (According to Lang Pop, Amazon has no books on C++? That doesn't seem very plausible given that I've bought a good handful from them) And most languages vary their positions wildly on the different lists. And of course, searching for "C Programming" doesn't just give you a list of matches for the programming language C. It also gives you matches for everything related to programming which mention the letter C, perhaps as a variable name. Or how about a book, blog post or anything else on, say, Haskell, which says "unlike in C, "? Whoops, suddenly we've got a match for C Programming. How many C# texts do you think mention Java and/or C/C++? I'd guess something like 99.99%. But the reverse isn't true. Why would a C book even mention C#? Same with Java. Java was there first, there's no point in contrasting the language with C#.

In any case, C# is a very popular language. Not as widely used as Java or C/C++, perhaps (all of which are much older, and also better supported on non-MS platforms), but still very popular. And now consider who actually asks the most questions.

Is it people who're working on the same C application they've worked on for the last 8 years? Not often. Is it people who are learning programming, or are trying to deal with a new technology? Quite often. And C# is very popular in those circles. .NET and C# add features almost overnight, and because the language is relatively young, and improves very quickly, a lot of people are learning it. Either because it looks like the next big thing, or simply because they've been tasked with developing or maintaining a C# application, so they need to learn the language.

In other words, your "average" C# programmer is likely to have less experience with the language than your average C++ or Java programmer have with their language. That means that C# is likely to be overrepresented on any site where people can ask for programming help, such as SO.

And finally, of course, at least one of the founders of SO is a big fan of the language, and his blog tends to be read by a lot of C# programmers.


I use C# professionally and for hobby programming. I seriously dispute the charge that C# is not a very popular development language. Many, many people use it.

You could ask the same question about why there are so many LISP/Scheme questions popping up on here these days.

He gives statistics and you counter with your opinion. I spose I'll believe you then! :P – Max Howell Dec 9 '08 at 14:48
It's not my opinion. Take a look for yourself - go to careerbuilder or, take a look at the number of C# jobs compared to others. – Rob Ringham Dec 9 '08 at 20:10

The methodology used by Lang Pop seems to be flawed, or at least skewered against C#. First of all C# is a fairly new language compared to say C or C++ or even Java so it makes sense that more books and web pages will have been written about those languages, simply because they’ve existed longer.

Secondly, both Freshmeat and Google Code focus on Open Source and Unix/Linux software. C# is not used very much in these circles, partially for the bad cross platform support and partially for ideological reasons.

Also their Amazon and results seem wrong. They claim there are more books about Haskell and Forth than there are about C#. I cursory search on Amazon that I just did seems to seriously dispute that. They also claim virtually no links to C#, again simply going to that site would prove that wrong.

On the whole there seems to be more than enough flaws in their approach to safely ignore any conclusions about programming languages that you might come to using their data.


The people that use this site are mainly .NETers that all read the same blogs and participate in the well-known .NET group-think that all .NET 'professionals' subscribe to.

Why do you think C#/.NET users get so defensive when you ask a question like this?

I read '.NETers' as '.NUTTers' when I first saw it =D – Kieveli Dec 10 '08 at 3:37

The lang pop results are misleading. C# suffers from having a character that's hard to search on. Using search engine queries as a measure of its popularity is flawed at best. Developers of C# who do searches tend to avoid searching on "C#" because it brings back invalid results.

Google has no problem understanding "C#" as a search term – Richard Everett Dec 9 '08 at 14:37
Google can handle it, but if you have query suggestions turned on and begin your query with "C#", all the suggestions will have the "#" removed. I had to turn them off because half of my "C#" searches were turning into "C" searches, which I then had to edit and run again. – Jeromy Irvine Dec 9 '08 at 15:08

Because C# is in fact a popular language. Remember that statistics is just another word for lies.


I would strongly contend that Langpop is either inaccurate or pushing an agenda. C# is all over the place.


If we check in number of search, C# is not as much searched as Java or PHP but still is popular. alt text

As I mentioned in the comment of this question. This question has already been discussed and we see more C#/Vb.Net question because the peoples who launch this website have a lot of reader from their blog. Their blog are .Net related and of course that bring a lot more C#/ developer here. Maybe in few months we will see more other language big name coming here and the community will change.


The cited survey measures "buzz", not popularity or frequency of usage by actual programmers.

Experts rarely use such generic words in their exchanges. Searching for the word "programming" biases the search toward academic and news sources and away from professional sources. So this popularity measure is skewed toward people who are not paid to program and discounts people who are paid to program.

Accuracy improves dramatically when money is involved. A more reliable pair of sites to search would be Dice and CareerBuilder. And these sites almost certainly have a search that distinguishes C#, C, C++, etc.

Here is some data that Dice posted for Q4 2007. Numbers are approximate, as I copied them off a graph. Note that job postings for ".Net" were 3 times those for "C#".

(Q4 2007)

19,000  Java
12,000  .Net
10,500  Oracle
 6,000  Sql Svr
 4,000  j2ee
 3,500  c#

These numbers indicate that 18 months ago the Microsoft platform accounted for about 40% of industry jobs.


This phenomenon is not limited to the perceived popularity of a programming language. With anything, you generally have 3 major groups of interested parties. You have the evangelists, the opponents, and the average majority. Both the evangelists and opponents will be very vocal, but the majority are just getting their jobs done. The vocal minority can create the public perception that they are larger than they really are.


Statistics sample are not "random picked", there are a lot links coming from C# blogs, msdn blog.

I think is NOT YET well known by other community. is not better then others(forums, mailing list) on same langauge.


The assesment that C# is not popular is very dependant upon which realm of developers you survey. I'm a long-time consultant in the NYC area and have worked in various industries including finance, insurance, banking, pharmaceutical, legal and engineering. In those venues C# is overwhelmingly the language of choice for enterprise scale application development.

If you consider the robustness of third-party support and the advantages of using a type-safe, memory managed platform that is heavily supported by a large corporation, the reasons are clear.


I would expect it to be the most popular for the various reasons below (in no particualar order).

  1. The more people learning the language then the more questionst that they have.
  2. At one point, most .NET examples were in C# (I'm not sure if that's the case anymore).
  3. If you are Java programmer C# is the most natural .NET language to use.
  4. If you are a VB classic programmer I personally feel that VB .NET is such a different language that you might just as well learn C#, your previous VB knowledge just gets in the way in VB .NET.
  5. If you are a C or C++ programmer you would naturally migrate to C#.
  6. XNA uses C#.
  7. I believe C# is the most popular language for Compact Framework development on Windows Mobile.
  8. It's the language to use for Mono based development.

I dont agree with the langpop sites way of measuring the popularity of the language/

Languages such as C have been round much longer than C# so it seems likely there will be more books articles etc

There always seems to have been less open source projects written in C# than say PHP

Certain sites favour or are more popular with specific languages


One thing that is never taken into consideration in these "language polls" is the longevity of the language. I am not surprised that C leads almost exclusively in all of the polls in the original link, since it has been around longer.

The problem with using something like books from Amazon is flawed, by nature. If a language has been out longer, of course it is going to have more books. The same holds true with articles online, and is even further compounded by the name of the language (having a # in it).

A more appropriate way to measure would be to do such measurements over a fixed period of time, i.e. over the last year.

From personal experience, I can tell you that there are more job openings in my market for C# developers than either the PHP or VB developers that show up ahead on the charts, and C# and Java appear to be pretty close in talking to some of the technical recruiters that we have worked with.


There are gaming companies using C# as well. I worked for a company for a while and they had a fully implemented slot machine with device support all written in C# except for a couple of interop DLLs where required. The only thing pending was gaming board approval, but they bought another company and scrapped the $5 million project.


I think one of the reasons (in addition to the more popular answers in this thread) is misuse of tags.

A lot of the time people use a language-specific tag when there's no need for it. For example, "How do I subscribe to an event in C#?" would definitely require a C# tag. "How do I make a worker thread to perform an asynchronous action that raises an event when it is finished?" is not a C#-specific question; this should be tagged .NET. People polarize themselves to one language and figure, "I want a C# answer, so I'll tag it as C#."


Any online survey is going to get skewed by the interests of the readers - you can't really use it as a good example.

In UK job market C# and Java jobs pay about the same, and both job markets are driven by the number of positions available and the relative scarcity of available developers.

I reckon Java and C# are about the same size in the UK.

Almost all of us in the private beta were readers of Jeff Atwood's (mostly .Net) blog. So there was skew here when it first went public. A few months later it now seems pretty balanced.