Start Matrix loop from item that contains todays day
Do you really want to start the Matrix loop from the week day offset?  Or do you just want to only start printing when that offset matches.  The former seems like a bit of a micro-optimization.

For the latter, something like this completely untested code should do it:

{% for entry in craft.entries.section('menuSection').find() %}

    {% for menuItem in entry.menuEntries %}

        &lt;h2&gt;{{ menuItem.title }}&lt;/h2&gt;

        &lt;ul&gt;
            {% set offset = false %}

            {# Matrix blocks #}
            {% for item in menuItem.weeklyMenuItems %}

                {% if item.dayOfTheWeek == now|date('l') or offset &gt; 0 }}
                    {% set offset = loop.index0 %}

                    &lt;li&gt;
                        &lt;h3&gt;{{ item.dayOfTheWeek }} - Matched&lt;/h3&gt;
                        &lt;p&gt;{{ item.itemTitle }} - Matched&lt;/p&gt;
                    &lt;/li&gt;
                {% endif %}
            {% endfor %}

            {% if offset == false %}
                {% set offset = 0 %}
            {% endif %}

            {# 2nd pass #}
            {% for item in menuItem.weeklyMenuItems|slice(0, offset) %}
                &lt;li&gt;
                    &lt;h3&gt;{{ item.dayOfTheWeek }} - Matched&lt;/h3&gt;
                    &lt;p&gt;{{ item.itemTitle }} - Matched&lt;/p&gt;
                &lt;/li&gt;
            {% endfor %}
        &lt;/ul&gt;

    {% endfor %}

{% endfor %}