Си тілінің ерекшеліктері Көлемінің шағындығы С тілінің синтаксистік ережелері басқа тілдерге қарағанда аз, оның компиляторын 256 Кб көлем арқылы-ақ жазып шығуға болады. Мұндағы операциялық әрекеттер, олардың комбинациясы жетерлік, бірақ қордағы түйінді сөздер саны да көп емес, Дэннис Ритчи жасаған алғашқы С тілінде тек 27 түйінді сөз болды, кейіннен ANSI C стандартында тағы бірнеше сөз қосылды.
Тілдің командалары жиыны Microsoft C/C++ нұсқасында тағы 19 командалар мен түйінді сөздер қосылды, соның нәтижесінде олар 66 болды.
Басқа программалау тілдердегі функциялар С тілінде жоқ, мысалы, енгізу-шығару операторлары да кездеспейді, оның есесіне кітапханалық әр түрлі функциялар саны жеткілікті.
Жылдам істейтіндігі Си компиляторлары жасаған программа кодтары шағын, әрі жылдам істейді, оның үстіне тілдің аппаратық құралдарға жақындығы ассемблер тіліміен қатар жылдамдықпен жұмыс істеуге мүмкіндік береді.
Типтері де күрделі емес (Язык со слабой типизацией)
Паскальға қарағанда, мәліметтерді типтендіру мұнда төменгі деңгейде, ол типтерді бір-біріне жеңіл ауыстырады. Мұндай қасиет В тілінен келді. Мысалы, программаның бір жерінде айнымалы символдық болса, ал басқа жерде оны символдың ASCI-коды (одан 32-ні алып ) ретінде қарастыруға болады.
Құрылымды тіл болғандығы (Структурированный язык) С-де қазіргі тілдерде болатын барлық басқару операторлары бар. 1971 жылдың өзінде-ақ жаңа ғана жасалған Си тілі алғашқы құрылымдық программалау тілі ретінде танылған еді. Мұнда: for – цикл операторы, if және if-else конструкциясы, таңдау операторы (switch) және while циклы да бар.
Модульдік программалауды сүйемелдеуі С-де жеке компиляциялау мен біріктіруден құралатын модульдік программалау концепциясы пайдаланылады. Мұнда тек программаның өзгертілген бөліктерін жеке компиляциялау мүмкіндігі бар.
Екілік разрядтарды өңдеуі Жүйелік программалауда екілік разрядтарды өңдеу ісі жиі кездеседі. Әрине, UNIX операциялық системасымен тығыз байланыста пайда болған Си тілінің екілік сандармен жұмыс істеу мүмкіндіктері де зор.