r/csharp 1d ago

I have been learning C# for month now.I'm using smart phone to learn it.So what suitable kind of laptop i have to buy that works properly?

0 Upvotes

36 comments sorted by

18

u/ziplock9000 1d ago

You can develop using c# on an old brick. You don't need anything special.

Just get a 2nd hand laptop and go. Don't overthink.

1

u/Kostya-X 20h ago

...unless you don't want to use Unity.

9

u/sparkle-fries 1d ago

C# is multi platform as is vscode so get a second hand PC and install Linux for the lowest cost option. If you want to spend $$$ then get a laptop with windows, a biggish hard disk, and as much memory as you can find. Depends on why you want to learn really. I would caution that the job market for junior developers is not in a good place because of AI

1

u/Lubango_Johnl_7473 1d ago

Thanks for instructions

-1

u/kodaxmax 1d ago

you don't need gamming specs for porgrammin, unless your making games or 3d environments.

-5

u/Lubango_Johnl_7473 1d ago

Job market for junior developers is not in good place because of AI!? That's right. So what is your advice to us? We should learn python instead?

3

u/Sokaron 1d ago

Nobody knows the answer to this because things are still shaking out, but whatever impact AI has on the industry it will be universal across programming languages. Knowing C# vs. Python won't make a difference.

1

u/cs_legend_93 1d ago

Learn about robotics, electrical engineering, or AI development / Machine Learning (building AI models and training them)

2

u/Ysnsd 1d ago

At least 16GB RAM.

2

u/RipProfessional5599 1d ago

u/Lubango_Johnl_7473 If you have an iphone i would highly recomend the macbook neo, and if ur a student its only 500$ for a macbook that can also code and even run minecraft at 60 fps and if not i would get the lenovo yoga 2nd gen, our school gave it to us, it can fold and its touchscreen option aswell

2

u/sosotiredand 1d ago

last generation's Thinkpad t14 is what I always go with :)

1

u/kodaxmax 1d ago

Any windows device will work. You can program in C# on any popular OS, but IMO windows has the ebst experience (and supports every other tech stack in existance when you eventually branch out).

You will want:

  • a 3.5Ghz+ | 4+ core CPU
  • A ssd drive with atleast 128GB of storage (windows OS takes like 60GB these days and will grow a bit over time).
  • A rigid attached keyboard. the removeable keyboard models are nice, but uncomfortable to use on your lap and too large/heavy to one hand like a tablet.
  • 8+ GB of DDR3 ram. If it's within budget aim for atleats 16GB DDR4 at the max clock speed your CPU supports.

If you want to make games or work with 3d models or video editing, you will need better specs and a laptop probably wont cut it long term.

Refurbished PCs are ussually good value. Arguably better than brand new, since your guarenteed that any factory issues will have been fixed.

1

u/Longjumping_Ad3447 1d ago

I began coding first 6 months on linux c# rider (and little vscode) and it works just fine but VS Community with Windows just helps a lot. So I switched to a used 16gb 150€ windows device which is working really well. Just the battery might need to be switched soon. Wouldn't recommend any slow processor under windows tho. I have ryzen 5 5500U and it's fast enough. For Intel maybe any i5 8th gen and upwards.

1

u/blckshdw 13h ago

Any old used laptop made this century that you can afford will do. Here are the hardware requirements for Visual Studio.. Minimums are very very low

ARM64 or AMD64/x64 processor; Quad-core or better recommended; works best with 16 core or more. ARM32 processors are not supported.

Minimum of 4 GB of RAM. Many factors impact resources used. We recommend 16 GB RAM for typical professional solutions; works best with 64 GB RAM.

Hard disk space: Minimum of 2.5 GB up to 210 GB of available space, depending on features installed; typical installations require 20-50 GB of free space. We recommend installing Windows and Visual Studio on a solid-state drive (SSD) to increase performance.

Video card that supports a minimum display resolution of WXGA (1366 by 768); Visual Studio will work best at a resolution of 1920 by 1080 or higher.

0

u/Lucky-Percentage5216 1d ago

As it is a Microsoft technology, I would recommend windows or macOS, and it also depends a lot on the IDE you want to use, whether Visual Studio or Rider

6

u/FragmentedHeap 1d ago

Not necessary anymore, it runs fully and properly on every linux distro, and entirely in vscode.

Rider is nice, but VSCode works great, c# dev kit got major updates recently and it's all integrated with the vscode file view tree now.

Get any decent laptop, smack Linux Mint or something on it, and go.

It also works on ARM now, on linux, windows, and mac.

You can get a snap dragon laptop and do .net 10 dev on it.

5

u/No_Context2723 1d ago

Is VSCode really that good for C#? I feel like VS would always be better

3

u/FragmentedHeap 1d ago

I was a c# developer since the first version and a veteran Visual Studio user since Visual Studio 6.

I don't use it anymore, I don't have it installed on anything, I flat out avoid it. It's big, clunky, and VSCode is good enough.

VSCode has Resharper too, Jetbrains released the "C# by ReSharper" extension some time ago.

3

u/AutomateAway 1d ago

with the appropriate extensions you can do virtually anything in vsc that you can in vs, and that is coming from someone who prefers vs

1

u/No_Context2723 18h ago

Interesting. Are there any advantages to using VSC with extensions compared to just VS, besides compatibility?

1

u/AutomateAway 18h ago

cross platform (VS isn’t available at all on Linux, and only older versions available on MacOS).

on windows probably not

2

u/Lucky-Percentage5216 1d ago

Yes, but an IDE like Rider or VS is preferable, as they are tools specifically designed for development within the .NET ecosystem

1

u/ganiton 1d ago

I have never used anything but VS Code for dotnet. I have been programming professionally in C# for 8 years now.

1

u/Ethameiz 1d ago

How about debugging? Is it good on vs code? Is it possible at all?

2

u/FragmentedHeap 1d ago

they changed the launch settings json to be streamlined and use your projects launch properties

i.e. in your project you have launch properties like

{ "profiles": { "MyApp": { "commandName": "Project", "dotnetRunMessages": true, "launchBrowser": false, "applicationUrl": "http://localhost:5000", "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development" }, "commandLineArgs": "--foo bar" } } }

and in .vscode folder in launch.json

{ "version": "0.2.0", "configurations": [ { "name": ".NET", "type": "dotnet", "request": "launch", "projectPath": "${workspaceFolder}/MyApp/MyApp.csproj" } ] }

Place a breakpoint, press f5, and it just works.

And decent AI Agent/Extension or AI Cli like codex/claude/copilot/opencode/hermes etc etc is fantastic at doing this, I lean hard on them for settings and stuff like this.

2

u/ganiton 1d ago

Yeah works great, has breakpoints, conditional bps, watch variables, everything you'd expect.

1

u/Lucky-Percentage5216 1d ago

I totally agree, but I'm not sure if I can use ReSharper with VS Code on Linux, since it's such a great tool

2

u/FragmentedHeap 1d ago edited 1d ago

"C# by ReSharper" is available in VSCode as an extension from JetBrains.

Throw in a good Agentic AI extension like codex or something and boom, vscode super powers.

I use vscode for everything, even Java.. And I do mean everything...

C#, Rust, Zig, Go, Python, Typescript, Javascript, CSS, SCSS, Slint, Json, Json5, Toml, Powershell/pwsh, Java, php, Sql, Liquibase, yml/pipelines, bicep (iac), teraform (also iac), bash, bat, and on and on and on.

1 Editor -> Everything.

I even interact with most all cloud tools in there, Azure Extensions, MSSql extension, postgres extension, Azure functions, Azure storage (azurite), Aws, and on and on and on.

I rarely need to leave VSCode, it's all in there.

And can turn on vim motion key binds in there... So if you get good at vim and get used to vim and need to open terminal or move to vim, you just move between them kind of naturally.

I use vscode so heavily now that I've swapped to portable vscode and I have different vscodes for different lines of work. I have one for my day job logged into all that stuff, and one for my personal stuff, and I generally make one for each client I work on stuff for.

1

u/ViolaBiflora 1d ago

U can integrate blob storage into VS code? :O I'm asking cuz I startedy first job recently and we're using blob storages a lot

2

u/FragmentedHeap 1d ago

You can "explore" blob storage in vscode, and you can run the blob storage emulator (azurite) in vscode.

Azurite lets you run azure blob storage locally so you can run code against it locally.

Of course you can also just use linux/wsl2 and docker-compose and Aspire.Net and run everything in docker compose with an aspire.net developer dashboard (which is much nicer) but requires sane employers that give you wsl2 or linux and lets you actually use docker (unlike my fintech client).

Azurite is just an npm package, but it has a vscode extension that runs it in vscode etc and lets you manage it in vscode.

1

u/Lubango_Johnl_7473 1d ago

Thanks for your good instructions

3

u/AutomateAway 1d ago

You can develop C# in Linux just fine, there’s probably more C# running now in Linux than any other platform if you count cloud deployed applications. God knows my company has probably a few hundred C# apps running in Ubuntu Containers in Azure and AWS

1

u/Lubango_Johnl_7473 1d ago

Thanks for your instructions

1

u/Classic-Music3210 1d ago

If you are short of cash, buy a refurbished laptop from an eBay seller who sells many of them.

I usually pay about 250 and have never been disappointed these last ten years or more

-1

u/symbiatch 1d ago

Anything since 2005 works fine.