Can CRISPR be used in editing primary cells? How is the transfection efficiency?
The most efficient CRISPR-based editing of primary cells that I've read about used a technology called prime editing, developed in 2019.

Search-and-replace genome editing without double-strand breaks or donor DNA (PDF download)

Normal CRISPR-Cas9 protocols involve generating double-strand breaks (DSBs), and then either introducing a template for homologous repair or allowing the cell to repair the break without a template, leading to insertions or deletions at the lesion site.  Off-target cutting is common, so normal CRISPR-Cas9 produces undesirable or lethal mutations in a majority of transfected cells.  

Prime-editing uses a catalytically impaired Cas9 (generates nicks instead of DSBs) fused to a reverse transcriptase.  The fusion protein is guided to its target by a prime-editor gRNA ("pegRNA") that contains a normal targeting domain at its 5' end and a template for reverse transcription at its 3' end. A nick is generated by the Cas9 on the exposed strand (i.e. the strand not bound by the gRNA), and the 3' portion of the pegRNA partially hybridizes to the the 5' side of the nick, providing a free 5' end and a stretch of ssRNA for DNA polymerization.  Resolution of the resulting "flap" by endogenous nick-repair mechanisms results in editing at the target site without DSBs or exogenous DNA template.  

This method was assessed for its efficiency in several cell types, including primary mouse cortical neurons, which are post-mitotic and terminally-differentiated.  The authors observed the desired edit of DNMT1 in 7.1% of cells, with 0.58% indels on average.  Cas9 nuclease editing of the same cell type with the same lentivirus transfection system resulted in 31% indels, on average, an error rate more than 50 times that of prime-editing.