<?xml version="1.0" encoding="US-ASCII" ?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 5.21b -->
    <!-- Field: Doc-Info; Name: VendorURI; Value: https://www.novaworks.com -->
    <!-- Field: Doc-Info; Name: Status; Value: 0x00000000 -->
    <!-- Field: Doc-Info; Name: Misc; Value: 8qs5s7xRiXgen8uAanVcSaGHeaPtxZZwyYkhsGtxHfkany4tugT06yIC48eWwewO -->
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:dei="http://xbrl.sec.gov/dei/2023" xmlns:ecd="http://xbrl.sec.gov/ecd/2023" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2022-03-31" xmlns:SFST="http://southernfirst.com/20231231" elementFormDefault="qualified" targetNamespace="http://southernfirst.com/20231231">
    <annotation>
      <appinfo>
        <link:roleType roleURI="http://southernfirst.com/role/Cover" id="Cover">
          <link:definition>00000001 - Document - Cover</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:linkbaseRef xlink:type="simple" xlink:href="sfst-20231231_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:title="Presentation Links" />
        <link:linkbaseRef xlink:type="simple" xlink:href="sfst-20231231_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:title="Label Links" />
        <link:linkbaseRef xlink:type="simple" xlink:href="sfst-20231231_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:title="Definition Links" />
      </appinfo>
    </annotation>
    <import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd" />
    <import namespace="http://www.xbrl.org/2003/linkbase" schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" />
    <import namespace="http://xbrl.sec.gov/dei/2023" schemaLocation="https://xbrl.sec.gov/dei/2023/dei-2023.xsd" />
    <import namespace="http://fasb.org/us-types/2023" schemaLocation="https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd" />
    <import namespace="http://www.xbrl.org/dtr/type/2022-03-31" schemaLocation="https://www.xbrl.org/dtr/type/2022-03-31/types.xsd" />
    <import namespace="http://xbrl.sec.gov/ecd/2023" schemaLocation="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd" />
    <import namespace="http://xbrl.sec.gov/country/2023" schemaLocation="https://xbrl.sec.gov/country/2023/country-2023.xsd" />
    <import namespace="http://fasb.org/srt/2023" schemaLocation="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd" />
    <import namespace="http://fasb.org/srt-types/2023" schemaLocation="https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd" />
    <element id="SFST_ExclusionOfChangeInPensionMember" name="ExclusionOfChangeInPensionMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="SFST_ExclusionofStockAwardsAndOptionAwardsMember" name="ExclusionofStockAwardsAndOptionAwardsMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="SFST_InclusionofPensionServiceCostMember" name="InclusionofPensionServiceCostMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="SFST_InclusionofEquityValuesMember" name="InclusionofEquityValuesMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="SFST_AverageExclusionOfChangeInPensionValueMember" name="AverageExclusionOfChangeInPensionValueMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="SFST_AverageExclusionOfStockAwardsAndOptionAwardsMember" name="AverageExclusionOfStockAwardsAndOptionAwardsMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="SFST_AverageInclusionOfPensionServiceCostMember" name="AverageInclusionOfPensionServiceCostMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="SFST_AverageInclusionOfEquityValuesMember" name="AverageInclusionOfEquityValuesMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="SFST_FairValueOfEquityAwardsGrantedThatRemainedUnvestedMember" name="FairValueOfEquityAwardsGrantedThatRemainedUnvestedMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="SFST_ChangeInFairValueFromLastDayOfPriorYearToLastDayOfYearOfUnvestedEquityAwardsMember" name="ChangeInFairValueFromLastDayOfPriorYearToLastDayOfYearOfUnvestedEquityAwardsMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="SFST_ChangeInFairValueFromLastDayOfPriorYearToVestingDateOfUnvestedEquityAwardsVestedMember" name="ChangeInFairValueFromLastDayOfPriorYearToVestingDateOfUnvestedEquityAwardsVestedMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="SFST_EquityAwardAdjustmentsMember" name="EquityAwardAdjustmentsMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="SFST_AverageFairValueOfEquityAwardsGrantedThatRemainedUnvestedMember" name="AverageFairValueOfEquityAwardsGrantedThatRemainedUnvestedMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="SFST_AverageChangeInFairValueFromLastDayOfPriorYearToLastDayOfYearOfUnvestedEquityAwardsMember" name="AverageChangeInFairValueFromLastDayOfPriorYearToLastDayOfYearOfUnvestedEquityAwardsMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="SFST_AverageChangeInFairValueFromLastDayOfPriorYearToVestingDateOfUnvestedEquityAwardsVestedMember" name="AverageChangeInFairValueFromLastDayOfPriorYearToVestingDateOfUnvestedEquityAwardsVestedMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="SFST_AdjustmentToCompensationAmountEquityAwards" name="AdjustmentToCompensationAmountEquityAwards" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
</schema>
