Finns det någon som kikat på detta med fokus Sverige? För US-marknaden information från t.ex. indeed, glass-door och liknande som pekar på att det går ca 4 java-jobb på ett .NET jobb (där är Java, JavaScript och Python alla "större" än C#, C# och C++ ligger på rätt likartade nivåer enligt de flesta undersökningar/"mätningar").
Helt övertygad om att C#/.NET relativt sett är större i Sverige än världen i stort, men har inte sett konkreta siffror.
Sen skulle jag säga att med dagens arbetsmarknad är det rätt irrelevant vilken som är hetast. Det är sådan brutal brist på arbetskraft att man kan välja otroligt smala nischer och ändå få ett jobb inom någon vecka bara man har kompetensen!
Så längt viktigare att fundera på vad man själv är mest intresserad av än att försöka anpassa sig till marknaden.
C# och Java har ett rejält överlapp, det är nog den största generalisering man kan göra.
Ska man ändå försöka hitta skillnader finns det väl några uppenbara, denna bild sammanfattar det OK-ish
https://lh4.googleusercontent.com/vcevtlQOCobXfZMoWZYS4D6BvXyAKn2V7XbbMCzcMWKwoBwJmbn_SItLgkPrucfXWkW1F2Ry24uVj0sfccP7v5MUu_u5GJ-5ED7phag_TXuvCckSUfPz8qy7qQmHwrh9mYpY4L_3
C# används primärt av "Windows-only shops". Dotnet framwork var ju länge likhetstecken med C# och i detta finns inga ambitioner att stödja något annat än Windows. Mono har en implementationer som fungerar på MacOS och Linux, men finns delar som i.o.f.s. går att kompilera men de gör inget vettigt alt. fungerar inte alls då de använder Windows-specifika funktioner (t.ex. som att läsa/skriva registret).
.NET Core må vara crossplattform, men gissar att det mer används av sådana som varit "Windows-only shops" och som vill fortsätta med C# samtidigt som de vill börja använda molnet/datacenter mer (som helt domineras av Linux).
Svårt att se en MacOS- eller Linux-only välja .NET Core, finns liksom inga större tekniska fördelar över andra mer etablerade stackar. En sak Microsoft gör väldigt bra är deras utvecklingsmiljö, Visual Studio finns inte på Linux och även om den finns på MacOS känns den inte alls lika "Enterprise"-inriktad som på Windows. Visual Studio på Mac är primärt inriktad mot Mono, vilket gör att den passas superbra till t.ex. spelutveckling med Unity, men Mono har aldrig tagit fart utanför Unity.
Gissar också att Java är vanligare i riktigt stora system. Orsaken till den gissningen är flera
Var först med Visual Studio 2022(!) som själva "tool-chain" gick över till 64-bit. Sett bl.a. JetBrains pekat på begränsningar med detta, fast det påverkar i praktiken bara väldigt stora projekt. Microsoft känner säker sin marknad väl, de har sett att det inte funnits så stort behov här.
Andra saker som pekar på det är tekniker i C# som folk lyfter som fördel över Java. T.ex. async/await och PLINQ. Båda dessa är väldigt trevliga tekniker som gör livet enklare för utvecklare. Men i den bästa av världar gör teknik de enkla sakerna lätta och de svåra sakerna möjliga. Första delen är check, andra delen är är mer tveksamt...
Ställer man skalbarhet av en teknik som PLINQ mot Java steams så må den förra kanske vara lite enklare att använda, men den senare ger långt bättre prestanda när man skalar upp saker.
async/await har massor med fördelar, men till och med Microsoft själv har "erkänt" att det är väldigt svårt att debugga allt icke-trivialt som använder tekniken. Att tekniken ändå har väldigt gott rykte pekar på att de flesta helt enkelt inte bygger speciellt komplicerade saker.
Håller helt med om detta, är C++-nivå på hur många sätt man kan skjuta av både ben och huvud med async/await i C#. Men rätt använt på rätt ställe är det ändå guld värt! "Rätt sätt" att implementera detta skulle jag säga är vad man gjort i Go, behövs ingen magi från debugger eller så utan det är lätt att begripa det linjära flödet "by design" (Go och Erlang är än så länge ensamma om att få detta rätt).
I Java kan kan åstadkomma samma sak som C# async/await (båda dessa har dock fall de inte löser som just Go "automagiskt" löser), men det är mer explicit (fast det gör att man faktiskt ser vad som händer, inte "program by coincidence" som tyvärr ofta blir fallet i C#)
Men TL;DR blir ändå: det är ett gigantiskt överlapp i vad man gör med C# vs Java. Det kombinerat med ett skriande behov av folk för båda dessa betyder: du kan i praktiken välja ett jobb för en viss språk/löser-uppgift-X kombo. Går säker vara så specifik som: Linux-shop som jobbar med .NET-core (för även om det är väldigt ovanligt lär de ändå finnas).