<?xml version="1.0"?>
<ownershipDocument>

    <schemaVersion>X0202</schemaVersion>

    <documentType>4</documentType>

    <periodOfReport>2004-08-26</periodOfReport>

    <notSubjectToSection16>0</notSubjectToSection16>

    <issuer>
        <issuerCik>0000100378</issuerCik>
        <issuerName>TWIN DISC INC</issuerName>
        <issuerTradingSymbol>TDI</issuerTradingSymbol>
    </issuer>

    <reportingOwner>
        <reportingOwnerId>
            <rptOwnerCik>0001202941</rptOwnerCik>
            <rptOwnerName>BATTEN MICHAEL E</rptOwnerName>
        </reportingOwnerId>
        <reportingOwnerAddress>
            <rptOwnerStreet1>SENSIENT TECHNOLOGIES</rptOwnerStreet1>
            <rptOwnerStreet2>777 E WISCONSIN AVE</rptOwnerStreet2>
            <rptOwnerCity>MILWAUKEE</rptOwnerCity>
            <rptOwnerState>WI</rptOwnerState>
            <rptOwnerZipCode>53202</rptOwnerZipCode>
            <rptOwnerStateDescription></rptOwnerStateDescription>
        </reportingOwnerAddress>
        <reportingOwnerRelationship>
            <isDirector>0</isDirector>
            <isOfficer>1</isOfficer>
            <isTenPercentOwner>0</isTenPercentOwner>
            <isOther>0</isOther>
            <officerTitle>CHAIRMAN/CEO</officerTitle>
        </reportingOwnerRelationship>
    </reportingOwner>

    <nonDerivativeTable>
        <nonDerivativeTransaction>
            <securityTitle>
                <value>COMMON STOCK</value>
            </securityTitle>
            <transactionDate>
                <value>2004-08-26</value>
            </transactionDate>
            <transactionCoding>
                <transactionFormType>4</transactionFormType>
                <transactionCode>M</transactionCode>
                <equitySwapInvolved>0</equitySwapInvolved>
            </transactionCoding>
            <transactionTimeliness>
                <value></value>
            </transactionTimeliness>
            <transactionAmounts>
                <transactionShares>
                    <value>4500</value>
                </transactionShares>
                <transactionPricePerShare>
                    <value>20</value>
                </transactionPricePerShare>
                <transactionAcquiredDisposedCode>
                    <value>A</value>
                </transactionAcquiredDisposedCode>
            </transactionAmounts>
            <postTransactionAmounts>
                <sharesOwnedFollowingTransaction>
                    <value>4500</value>
                </sharesOwnedFollowingTransaction>
            </postTransactionAmounts>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>D</value>
                </directOrIndirectOwnership>
            </ownershipNature>
        </nonDerivativeTransaction>
        <nonDerivativeTransaction>
            <securityTitle>
                <value>COMMON STOCK</value>
            </securityTitle>
            <transactionDate>
                <value>2004-08-26</value>
            </transactionDate>
            <transactionCoding>
                <transactionFormType>4</transactionFormType>
                <transactionCode>M</transactionCode>
                <equitySwapInvolved>0</equitySwapInvolved>
            </transactionCoding>
            <transactionTimeliness>
                <value></value>
            </transactionTimeliness>
            <transactionAmounts>
                <transactionShares>
                    <value>3000</value>
                </transactionShares>
                <transactionPricePerShare>
                    <value>21.9313</value>
                </transactionPricePerShare>
                <transactionAcquiredDisposedCode>
                    <value>A</value>
                </transactionAcquiredDisposedCode>
            </transactionAmounts>
            <postTransactionAmounts>
                <sharesOwnedFollowingTransaction>
                    <value>7500</value>
                </sharesOwnedFollowingTransaction>
            </postTransactionAmounts>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>D</value>
                </directOrIndirectOwnership>
            </ownershipNature>
        </nonDerivativeTransaction>
        <nonDerivativeTransaction>
            <securityTitle>
                <value>COMMON STOCK</value>
            </securityTitle>
            <transactionDate>
                <value>2004-08-26</value>
            </transactionDate>
            <transactionCoding>
                <transactionFormType>4</transactionFormType>
                <transactionCode>S</transactionCode>
                <equitySwapInvolved>0</equitySwapInvolved>
            </transactionCoding>
            <transactionTimeliness>
                <value></value>
            </transactionTimeliness>
            <transactionAmounts>
                <transactionShares>
                    <value>4500</value>
                </transactionShares>
                <transactionPricePerShare>
                    <value>22.3056</value>
                </transactionPricePerShare>
                <transactionAcquiredDisposedCode>
                    <value>D</value>
                </transactionAcquiredDisposedCode>
            </transactionAmounts>
            <postTransactionAmounts>
                <sharesOwnedFollowingTransaction>
                    <value>3000</value>
                </sharesOwnedFollowingTransaction>
            </postTransactionAmounts>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>D</value>
                </directOrIndirectOwnership>
            </ownershipNature>
        </nonDerivativeTransaction>
        <nonDerivativeTransaction>
            <securityTitle>
                <value>COMMON STOCK</value>
            </securityTitle>
            <transactionDate>
                <value>2004-08-26</value>
            </transactionDate>
            <transactionCoding>
                <transactionFormType>4</transactionFormType>
                <transactionCode>S</transactionCode>
                <equitySwapInvolved>0</equitySwapInvolved>
            </transactionCoding>
            <transactionTimeliness>
                <value></value>
            </transactionTimeliness>
            <transactionAmounts>
                <transactionShares>
                    <value>3000</value>
                </transactionShares>
                <transactionPricePerShare>
                    <value>22.55</value>
                </transactionPricePerShare>
                <transactionAcquiredDisposedCode>
                    <value>D</value>
                </transactionAcquiredDisposedCode>
            </transactionAmounts>
            <postTransactionAmounts>
                <sharesOwnedFollowingTransaction>
                    <value>0</value>
                </sharesOwnedFollowingTransaction>
            </postTransactionAmounts>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>D</value>
                </directOrIndirectOwnership>
            </ownershipNature>
        </nonDerivativeTransaction>
    </nonDerivativeTable>

    <derivativeTable>
        <derivativeTransaction>
            <securityTitle>
                <value>STOCK OPTIONS</value>
            </securityTitle>
            <conversionOrExercisePrice>
                <value>20</value>
            </conversionOrExercisePrice>
            <transactionDate>
                <value>2004-08-26</value>
            </transactionDate>
            <transactionCoding>
                <transactionFormType>4</transactionFormType>
                <transactionCode>M</transactionCode>
                <equitySwapInvolved>0</equitySwapInvolved>
            </transactionCoding>
            <transactionTimeliness>
                <value></value>
            </transactionTimeliness>
            <transactionAmounts>
                <transactionShares>
                    <value>4500</value>
                </transactionShares>
                <transactionPricePerShare>
                    <value>20</value>
                </transactionPricePerShare>
                <transactionAcquiredDisposedCode>
                    <value>D</value>
                </transactionAcquiredDisposedCode>
            </transactionAmounts>
            <exerciseDate>
                <value>1994-08-15</value>
            </exerciseDate>
            <expirationDate>
                <value>2004-08-27</value>
            </expirationDate>
            <underlyingSecurity>
                <underlyingSecurityTitle>
                    <value>COMMON STOCK</value>
                </underlyingSecurityTitle>
                <underlyingSecurityShares>
                    <value>4500</value>
                </underlyingSecurityShares>
            </underlyingSecurity>
            <postTransactionAmounts>
                <sharesOwnedFollowingTransaction>
                    <value>3000</value>
                </sharesOwnedFollowingTransaction>
            </postTransactionAmounts>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>D</value>
                </directOrIndirectOwnership>
            </ownershipNature>
        </derivativeTransaction>
        <derivativeTransaction>
            <securityTitle>
                <value>STOCK OPTIONS</value>
            </securityTitle>
            <conversionOrExercisePrice>
                <value>21.9313</value>
            </conversionOrExercisePrice>
            <transactionDate>
                <value>2004-08-26</value>
            </transactionDate>
            <transactionCoding>
                <transactionFormType>4</transactionFormType>
                <transactionCode>M</transactionCode>
                <equitySwapInvolved>0</equitySwapInvolved>
            </transactionCoding>
            <transactionTimeliness>
                <value></value>
            </transactionTimeliness>
            <transactionAmounts>
                <transactionShares>
                    <value>3000</value>
                </transactionShares>
                <transactionPricePerShare>
                    <value>21.9313</value>
                </transactionPricePerShare>
                <transactionAcquiredDisposedCode>
                    <value>D</value>
                </transactionAcquiredDisposedCode>
            </transactionAmounts>
            <exerciseDate>
                <value>1999-07-30</value>
            </exerciseDate>
            <expirationDate>
                <value>2004-08-27</value>
            </expirationDate>
            <underlyingSecurity>
                <underlyingSecurityTitle>
                    <value>COMMON STOCK</value>
                </underlyingSecurityTitle>
                <underlyingSecurityShares>
                    <value>3000</value>
                </underlyingSecurityShares>
            </underlyingSecurity>
            <postTransactionAmounts>
                <sharesOwnedFollowingTransaction>
                    <value>0</value>
                </sharesOwnedFollowingTransaction>
            </postTransactionAmounts>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>D</value>
                </directOrIndirectOwnership>
            </ownershipNature>
        </derivativeTransaction>
    </derivativeTable>

    <ownerSignature>
        <signatureName>/s/ Michael E. Batten</signatureName>
        <signatureDate>2004-08-30</signatureDate>
    </ownerSignature>
</ownershipDocument>
[{"type": "4", "sequence": "1", "filename": "primary_doc.xml", "description": "PRIMARY DOCUMENT", "secsgml_size_bytes": 11654}]
X0202
4
2004-08-26
0
0000100378
TWIN DISC INC
TDI
0001202941
BATTEN MICHAEL E
SENSIENT TECHNOLOGIES
777 E WISCONSIN AVE
MILWAUKEE
WI
53202
0
1
0
0
CHAIRMAN/CEO
COMMON STOCK
2004-08-26
4
M
0
4500
20
A
4500
D
COMMON STOCK
2004-08-26
4
M
0
3000
21.9313
A
7500
D
COMMON STOCK
2004-08-26
4
S
0
4500
22.3056
D
3000
D
COMMON STOCK
2004-08-26
4
S
0
3000
22.55
D
0
D
STOCK OPTIONS
20
2004-08-26
4
M
0
4500
20
D
1994-08-15
2004-08-27
COMMON STOCK
4500
3000
D
STOCK OPTIONS
21.9313
2004-08-26
4
M
0
3000
21.9313
D
1999-07-30
2004-08-27
COMMON STOCK
3000
0
D
/s/ Michael E. Batten
2004-08-30