Да можно!
C# - обычный императивный ЯП, очень похожий на многие другие.
C# отличается от многих других ЯП опорой на сборщик мусора. В частности это выражается в отсутствии деструктора (вместо него финализатор) и поддержкой в самом языке интерфейса IDisposable.
Основное отличе C# от других языков с автоматическим управленим памятью (со сборкой мусора) в том, что взаимодействие с платформой (вызовы API операционной системы) крайне просты, а кроме того .net, на котором базируется C# позволяет создавать смешанные сборки (mixed assemblies), в которых может быть одновременно и нативный код (без сборщика мусора, без использования промежуточного языка MSIL) и управляемый.
Если вас волнуют задержки на сборку мусора, то для отдельных участков кода можно запретить сборку мусора.
============
Ну а в целом писать без движков и фрэймворков - мазохизм последней стадии. Это что-то из разряда психиатрии. Вы в любом случае в процессе написания переизобретёте либо 3D движок целиком, либо его части.