How to theme one specific Views 3 exposed filter form template and HTML?
For the .tpl file

Views recognises files with names of the form views-exposed-form--view_id--display_id.tpl.php. You can also use less strict filenames of the form views-exposed-form--view_id.tpl.php or views-exposed-form--display_id.tpl.php.

While it's not addressed directly there, you can look up and copy-paste what these values should be by going to the view edit page, then Advanced > Theme > Information, then taking a suffix from an option under Display Output at the top.

For example, this is a view with machine name products, and I'm targeting its page display:



So the filename is views-exposed-form--products--page.tpl.php. 

Other prefixes in the Display Output section can be used too, for example views-exposed-form--products.tpl.php would target all displays from the "products" view, including blocks or panel panes, while views-exposed-form--page.tpl.php would target all views pages. 

For template.php

You can put a condition on the form's HTML id, which is generated along similar lines, like this: 

   function yourtheme_form_alter(&amp;$form, $form_state, $form_id) {
     switch ($form_id)  {
       case 'views_exposed_form':
         if($form['#id'] == 'views-exposed-form-viewid-displayid'){
             # do things to the array
         }
       break;
     }
   }


Or potentially even switch($form['#id']){} - but the original is written assuming you already have other uses of this hook based on $form_id for other forms.

Continuing with my previous example, it'd be views-exposed-form-products-page.

Note that this might need a different string if you've overwritten the form ID output anywhere, and there doesn't seem to be any way to target all displays short of something crude like if(strpos($form['#id'], 'views-exposed-form-products') !== false){  }