emacs 29 comes with eglot built-in. That's the LSP client for emacs and as long as your language has an LSP server, it can hook to it. OP is using C and I am not sure there's a LSP server for C that can work well in emacs, but using Go and Dart and Java seems to work just fine in emacs, just like other IDEs.