﻿<?xml version="1.0" encoding="utf-8"?>
<InstanceReport xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <Version>2.2.0.7</Version>
  <hasSegments>false</hasSegments>
  <ReportName>Commitments and Contingencies</ReportName>
  <ReportLongName>1090 - Disclosure - Commitments and Contingencies</ReportLongName>
  <DisplayLabelColumn>true</DisplayLabelColumn>
  <ShowElementNames>false</ShowElementNames>
  <RoundingOption />
  <HasEmbeddedReports>false</HasEmbeddedReports>
  <Columns>
    <Column>
      <LabelColumn>false</LabelColumn>
      <Id>1</Id>
      <Labels>
        <Label Id="1" Label="6 Months Ended" />
        <Label Id="2" Label="Jun. 30, 2010" />
      </Labels>
      <CurrencyCode>USD</CurrencyCode>
      <FootnoteIndexer />
      <hasSegments>false</hasSegments>
      <hasScenarios>false</hasScenarios>
      <Segments />
      <Scenarios />
      <Units>
        <Unit>
          <UnitID>USD</UnitID>
          <UnitType>Standard</UnitType>
          <StandardMeasure>
            <MeasureSchema>http://www.xbrl.org/2003/iso4217</MeasureSchema>
            <MeasureValue>USD</MeasureValue>
            <MeasureNamespace>iso4217</MeasureNamespace>
          </StandardMeasure>
          <Scale>0</Scale>
        </Unit>
        <Unit>
          <UnitID>USDPerShare</UnitID>
          <UnitType>Divide</UnitType>
          <NumeratorMeasure>
            <MeasureSchema>http://www.xbrl.org/2003/iso4217</MeasureSchema>
            <MeasureValue>USD</MeasureValue>
            <MeasureNamespace>iso4217</MeasureNamespace>
          </NumeratorMeasure>
          <DenominatorMeasure>
            <MeasureSchema>http://www.xbrl.org/2003/instance</MeasureSchema>
            <MeasureValue>shares</MeasureValue>
            <MeasureNamespace>xbrli</MeasureNamespace>
          </DenominatorMeasure>
          <Scale>0</Scale>
        </Unit>
        <Unit>
          <UnitID>Shares</UnitID>
          <UnitType>Standard</UnitType>
          <StandardMeasure>
            <MeasureSchema>http://www.xbrl.org/2003/instance</MeasureSchema>
            <MeasureValue>shares</MeasureValue>
            <MeasureNamespace>xbrli</MeasureNamespace>
          </StandardMeasure>
          <Scale>0</Scale>
        </Unit>
      </Units>
      <CurrencySymbol>$</CurrencySymbol>
    </Column>
  </Columns>
  <Rows>
    <Row>
      <Id>2</Id>
      <Label>Commitments and Contingencies</Label>
      <Level>0</Level>
      <ElementName>mwe_CommitmentsAndContingenciesDisclosureAbstract</ElementName>
      <ElementPrefix>mwe</ElementPrefix>
      <IsBaseElement>false</IsBaseElement>
      <BalanceType>na</BalanceType>
      <PeriodType>duration</PeriodType>
      <ShortDefinition>No definition available.</ShortDefinition>
      <IsReportTitle>false</IsReportTitle>
      <IsSegmentTitle>false</IsSegmentTitle>
      <IsSubReportEnd>false</IsSubReportEnd>
      <IsCalendarTitle>false</IsCalendarTitle>
      <IsTuple>false</IsTuple>
      <IsAbstractGroupTitle>true</IsAbstractGroupTitle>
      <IsEquityPrevioslyReportedAsRow>false</IsEquityPrevioslyReportedAsRow>
      <IsEquityAdjustmentRow>false</IsEquityAdjustmentRow>
      <IsBeginningBalance>false</IsBeginningBalance>
      <IsEndingBalance>false</IsEndingBalance>
      <IsReverseSign>false</IsReverseSign>
      <PreferredLabelRole />
      <IsEPS>false</IsEPS>
      <FootnoteIndexer />
      <Cells>
        <Cell>
          <Id>1</Id>
          <ShowCurrencySymbol>false</ShowCurrencySymbol>
          <IsNumeric>false</IsNumeric>
          <IsRatio>false</IsRatio>
          <DisplayZeroAsNone>false</DisplayZeroAsNone>
          <NumericAmount>0</NumericAmount>
          <RoundedNumericAmount>0</RoundedNumericAmount>
          <NonNumbericText />
          <NonNumericTextHeader />
          <FootnoteIndexer />
          <hasSegments>false</hasSegments>
          <hasScenarios>false</hasScenarios>
          <DisplayDateInUSFormat>false</DisplayDateInUSFormat>
        </Cell>
      </Cells>
      <OriginalInstanceReportColumns />
      <ElementDataType>xbrli:stringItemType</ElementDataType>
      <SimpleDataType>string</SimpleDataType>
      <ElementDefenition>No definition available.</ElementDefenition>
      <IsTotalLabel>false</IsTotalLabel>
    </Row>
    <Row>
      <Id>3</Id>
      <Label>Commitments and Contingencies</Label>
      <Level>1</Level>
      <ElementName>us-gaap_CommitmentsAndContingenciesDisclosureTextBlock</ElementName>
      <ElementPrefix>us-gaap</ElementPrefix>
      <IsBaseElement>true</IsBaseElement>
      <BalanceType>na</BalanceType>
      <PeriodType>duration</PeriodType>
      <ShortDefinition>No definition available.</ShortDefinition>
      <IsReportTitle>false</IsReportTitle>
      <IsSegmentTitle>false</IsSegmentTitle>
      <IsSubReportEnd>false</IsSubReportEnd>
      <IsCalendarTitle>false</IsCalendarTitle>
      <IsTuple>false</IsTuple>
      <IsAbstractGroupTitle>false</IsAbstractGroupTitle>
      <IsEquityPrevioslyReportedAsRow>false</IsEquityPrevioslyReportedAsRow>
      <IsEquityAdjustmentRow>false</IsEquityAdjustmentRow>
      <IsBeginningBalance>false</IsBeginningBalance>
      <IsEndingBalance>false</IsEndingBalance>
      <IsReverseSign>false</IsReverseSign>
      <PreferredLabelRole>terselabel</PreferredLabelRole>
      <IsEPS>false</IsEPS>
      <FootnoteIndexer />
      <Cells>
        <Cell>
          <Id>1</Id>
          <ShowCurrencySymbol>false</ShowCurrencySymbol>
          <IsNumeric>false</IsNumeric>
          <IsRatio>false</IsRatio>
          <DisplayZeroAsNone>false</DisplayZeroAsNone>
          <NumericAmount>0</NumericAmount>
          <RoundedNumericAmount>0</RoundedNumericAmount>
          <NonNumbericText>&lt;table style="font-size:10pt; font-family:'Times New Roman',times,serif;"&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p style="FONT-FAMILY: times"&gt;&lt;font size="2"&gt;&lt;b&gt;9. Commitments and Contingencies&lt;/b&gt;&lt;/font&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style="list-style: none"&gt;
&lt;p style="FONT-FAMILY: times"&gt;&lt;font size="2"&gt;&lt;i&gt;Legal &lt;/i&gt;&lt;/font&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p style="FONT-FAMILY: times"&gt;&lt;font size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;The Partnership is subject to a variety of risks and disputes, and is a party to various legal proceedings in the normal course of its business. The Partnership maintains insurance policies in amounts and with coverage and deductibles as it believes reasonable and prudent. However, the Partnership cannot assure that the insurance companies will promptly honor their policy obligations or that the coverage or levels of insurance will be adequate to protect the Partnership from all material expenses related to future claims for property loss or business interruption to the Partnership, or for third-party claims of personal and property damage, or that the coverages or levels of insurance it currently has will be available in the future at economical prices. While it is not possible to predict the outcome of the legal actions with certainty, management is of the opinion that appropriate provisions and accruals for potential losses associated with all legal actions have been made in the condensed consolidated financial statements. &lt;/font&gt;&lt;/p&gt;
&lt;p style="FONT-FAMILY: times"&gt;&lt;font size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;In June 2006, the Office of Pipeline Safety ("OPS") issued a Notice of Probable Violation and Proposed Civil Penalty ("NOPV") (CPF No.&amp;nbsp;2-2006-5001) to both MarkWest Hydrocarbon and Equitable Production Company ("Equitable"). The NOPV is associated with the pipeline leak and an ensuing explosion and fire that occurred on November&amp;nbsp;8, 2004 in Ivel, Kentucky on an NGL pipeline owned by Equitable and leased and operated by a subsidiary, MarkWest Energy Appalachia, L.L.C. The NOPV sets forth six counts of violations of applicable regulations, and a proposed civil penalty in the aggregate amount of $1.1&amp;nbsp;million. An administrative hearing on the matter, previously set for the last week of March 2007, was postponed to allow the administrative record to be produced and to allow OPS an opportunity to respond to MarkWest's and Equitable's motions to dismiss count one of the NOPV, which involves $0.8&amp;nbsp;million of the $1.1&amp;nbsp;million proposed penalty. This count arises out of alleged activity in 1982 and 1987, which predates MarkWest's leasing and operation of the pipeline. MarkWest believes it has viable and mitigating defenses to the remaining counts and will vigorously defend all applicable assertions of violations. The administrative hearing request was withdrawn by MarkWest and Equitable in October 2009, and the parties are waiting for initial resolution on the briefs, exhibits and other documents filed or submitted by the parties in the matter.&lt;/font&gt;&lt;/p&gt;
&lt;p style="FONT-FAMILY: times"&gt;&lt;font size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;MarkWest Javelina Company, L.L.C. is a party to an action styled &lt;/font&gt;&lt;font size="2"&gt;&lt;i&gt;Esmerejilda G. Valasquez, et al. v. Occidental Chemical Corp., et al.,&lt;/i&gt;&lt;/font&gt;&lt;font size="2"&gt; Case No.&amp;nbsp;A-060352-C, 128&lt;sup&gt;th&lt;/sup&gt;&amp;nbsp;Judicial District, Orange County, Texas, original petition filed July&amp;nbsp;10, 2006; as refiled from previously dismissed petition captioned &lt;/font&gt;&lt;font size="2"&gt;&lt;i&gt;Jesus Villarreal v. Koch Refining&amp;nbsp;Co. et al&lt;/i&gt;&lt;/font&gt;&lt;font size="2"&gt;., Cause No.&amp;nbsp;05-01977-F, 214&lt;sup&gt;th&lt;/sup&gt;&amp;nbsp;Judicial Dist. Ct., County of Nueces, Texas, originally filed April&amp;nbsp;27, 2005, which sets forth claims for wrongful death, personal injury or property damage, and nuisance type claims, allegedly incurred as a result of operations and emissions from MarkWest Javelina's gas processing plant and from various petroleum, petrochemical and metal processing and refining operations located in the area, which were also named as defendants in the action. The action has been and is being vigorously defended, and management does not believe that this action will have a material adverse impact on the Partnership's financial position or results of operations. &lt;/font&gt;&lt;/p&gt;
&lt;p style="FONT-FAMILY: times"&gt;&lt;font size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;In the ordinary course of business, the Partnership is a party to various other legal and regulatory actions. In the opinion of management, none of these actions, either individually or in the aggregate, will have a material adverse effect on the Partnership's financial condition, liquidity or results of operations.&lt;/font&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
</NonNumbericText>
          <NonNumericTextHeader>9. Commitments and Contingencies


Legal
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;The Partnership is subject to a variety of risks and disputes, and is</NonNumericTextHeader>
          <FootnoteIndexer />
          <hasSegments>false</hasSegments>
          <hasScenarios>false</hasScenarios>
          <DisplayDateInUSFormat>false</DisplayDateInUSFormat>
        </Cell>
      </Cells>
      <OriginalInstanceReportColumns />
      <ElementDataType>us-types:textBlockItemType</ElementDataType>
      <SimpleDataType>textblock</SimpleDataType>
      <ElementDefenition>Includes disclosure of commitments and contingencies. This element may be used as a single block of text to encapsulate the entire disclosure including data and tables.</ElementDefenition>
      <ElementReferences>Reference 1: http://www.xbrl.org/2003/role/presentationRef
 -Publisher FASB
 -Name FASB Interpretation (FIN)
 -Number 14
 -Paragraph 3

Reference 2: http://www.xbrl.org/2003/role/presentationRef
 -Publisher FASB
 -Name Statement of Financial Accounting Standard (FAS)
 -Number 5
 -Paragraph 9, 10, 11, 12

</ElementReferences>
      <IsTotalLabel>false</IsTotalLabel>
    </Row>
  </Rows>
  <Footnotes />
  <NumberOfCols>1</NumberOfCols>
  <NumberOfRows>2</NumberOfRows>
  <HasScenarios>false</HasScenarios>
  <MonetaryRoundingLevel>UnKnown</MonetaryRoundingLevel>
  <SharesRoundingLevel>UnKnown</SharesRoundingLevel>
  <PerShareRoundingLevel>UnKnown</PerShareRoundingLevel>
  <HasPureData>false</HasPureData>
  <SharesShouldBeRounded>true</SharesShouldBeRounded>
</InstanceReport>
