100% ONLINE THEORY • STATEWIDE
Level 3 Online Theory Course — By City
The Level III theory classroom is 100% online, so your city is wherever you are. Find yours below for the local picture — tuition is $100 everywhere, the 8 modules and exam are included, and MLG issues your PSP-30 for the classroom section. You finish the skills and firearms portion with a local DPS-licensed instructor near you.
Rio Grande Valley — Our Home Turf
- Alamo — Hidalgo County · 19,493
- Alton — Hidalgo County · 18,198
- Bayview — Cameron County · 475
- Brownsville — Cameron County · 186,738
- Combes — Cameron County · 2,999
- Donna — Hidalgo County · 16,797
- Edcouch — Hidalgo County · 2,732
- Edinburg — Hidalgo County · 100,243
- Elsa — Hidalgo County · 5,668
- Escobares — Starr County · 2,588
- Granjeno — Hidalgo County · 283
- Harlingen — Cameron County · 71,829
- Hidalgo — Hidalgo County · 13,964
- Indian Lake — Cameron County · 839
- La Feria — Cameron County · 6,817
- La Grulla — Starr County · 1,222
- La Joya — Hidalgo County · 4,457
- La Villa — Hidalgo County · 2,804
- Laguna Vista — Cameron County · 3,520
- Los Fresnos — Cameron County · 8,114
- Los Indios — Cameron County · 1,008
- Lyford — Willacy County · 2,249
- McAllen — Hidalgo County · 142,210
- Mercedes — Hidalgo County · 16,258
- Mission — Hidalgo County · 85,778
- Palm Valley — Cameron County · 1,413
- Palmhurst — Hidalgo County · 2,601
- Palmview — Hidalgo County · 15,830
- Peñitas — Hidalgo County · 6,460
- Pharr — Hidalgo County · 79,715
- Port Isabel — Cameron County · 5,028
- Primera — Cameron County · 5,257
- Progreso — Hidalgo County · 4,807
- Progreso Lakes — Hidalgo County · 257
- Rancho Viejo — Cameron County · 2,838
- Raymondville — Willacy County · 10,236
- Rio Grande City — Starr County · 15,317
- Rio Hondo — Cameron County · 2,021
- Roma — Starr County · 11,561
- San Benito — Cameron County · 24,861
- San Juan — Hidalgo County · 35,294
- San Perlita — Willacy County · 538
- Santa Rosa — Cameron County · 2,450
- South Padre Island — Cameron County · 2,066
- Sullivan City — Hidalgo County · 3,908
- Weslaco — Hidalgo County · 40,160
Statewide — Top Cities & Every County Seat
- Abilene — Taylor County · 125,182
- Addison — Dallas County · 16,661
- Alamo Heights — Bexar County · 7,357
- Albany — Shackelford County · 1,854
- Alice — Jim Wells County · 17,891
- Allen — Collin County · 104,627
- Alpine — Brewster County · 6,035
- Alvin — Brazoria County · 27,098
- Amarillo — Potter County · 200,393
- Anahuac — Chambers County · 1,980
- Anderson — Grimes County · 193
- Andrews — Andrews County · 13,487
- Angleton — Brazoria County · 19,429
- Anna — Collin County · 16,896
- Anson — Jones County · 2,294
- Aransas Pass — Nueces County · 7,941
- Archer City — Archer County · 1,601
- Arlington — Tarrant County · 394,266
- Aspermont — Stonewall County · 789
- Athens — Henderson County · 12,857
- Austin — Travis County · 961,855
- Azle — Tarrant County · 13,369
- Baird — Callahan County · 1,479
- Balch Springs — Dallas County · 27,685
- Ballinger — Runnels County · 3,619
- Bandera — Bandera County · 829
- Bastrop — Bastrop County · 9,688
- Bay City — Matagorda County · 18,061
- Baytown — Harris County · 83,701
- Beaumont — Jefferson County · 115,282
- Bedford — Tarrant County · 49,928
- Bee Cave — Travis County · 9,144
- Beeville — Bee County · 13,669
- Bellaire — Harris County · 17,202
- Bellmead — McLennan County · 10,494
- Bellville — Austin County · 4,206
- Belton — Bell County · 23,054
- Benbrook — Tarrant County · 24,520
- Benjamin — Knox County · 196
- Big Lake — Reagan County · 2,965
- Big Spring — Howard County · 26,144
- Boerne — Kendall County · 17,850
- Bonham — Fannin County · 10,408
- Borger — Hutchinson County · 12,551
- Brackettville — Kinney County · 1,341
- Brady — McCulloch County · 5,118
- Breckenridge — Stephens County · 5,187
- Brenham — Washington County · 17,369
- Bridge City — Orange County · 9,546
- Brownfield — Terry County · 8,936
- Brownwood — Brown County · 18,862
- Bryan — Brazos County · 83,980
- Buda — Hays County · 15,108
- Burkburnett — Wichita County · 10,939
- Burleson — Johnson County · 47,641
- Burnet — Burnet County · 6,436
- Caldwell — Burleson County · 3,993
- Cameron — Milam County · 5,306
- Canadian — Hemphill County · 2,339
- Canton — Van Zandt County · 4,229
- Canyon — Randall County · 14,836
- Carrizo Springs — Dimmit County · 4,892
- Carrollton — Dallas County · 133,434
- Carthage — Panola County · 6,569
- Cedar Hill — Dallas County · 49,148
- Cedar Park — Williamson County · 77,595
- Celina — Collin County · 16,739
- Center — Shelby County · 5,221
- Centerville — Leon County · 905
- Channing — Hartley County · 281
- Childress — Childress County · 5,737
- Cibolo — Guadalupe County · 32,276
- Clarendon — Donley County · 1,877
- Clarksville — Red River County · 2,857
- Claude — Armstrong County · 1,186
- Cleburne — Johnson County · 31,352
- Cleveland — Liberty County · 7,471
- Clute — Brazoria County · 10,604
- Coldspring — San Jacinto County · 819
- Coleman — Coleman County · 3,912
- College Station — Brazos County · 120,511
- Colleyville — Tarrant County · 26,057
- Colorado City — Mitchell County · 3,991
- Columbus — Colorado County · 3,699
- Comanche — Comanche County · 4,211
- Commerce — Hunt County · 9,090
- Conroe — Montgomery County · 89,956
- Converse — Bexar County · 27,466
- Cooper — Delta County · 1,911
- Coppell — Dallas County · 42,983
- Copperas Cove — Coryell County · 36,670
- Corinth — Denton County · 22,634
- Corpus Christi — Nueces County · 317,863
- Corsicana — Navarro County · 25,109
- Cotulla — La Salle County · 3,718
- Crane — Crane County · 3,478
- Crockett — Houston County · 6,332
- Crosbyton — Crosby County · 1,492
- Crowell — Foard County · 769
- Crowley — Tarrant County · 18,070
- Crystal City — Zavala County · 6,354
- Cuero — DeWitt County · 8,128
- Daingerfield — Morris County · 2,522
- Dalhart — Dallam County · 8,447
- Dallas — Dallas County · 1,304,379
- Dayton — Liberty County · 8,777
- DeSoto — Dallas County · 56,145
- Decatur — Wise County · 6,538
- Deer Park — Harris County · 34,495
- Del Rio — Val Verde County · 34,673
- Denison — Grayson County · 24,479
- Denton — Denton County · 139,869
- Dickens — Dickens County · 219
- Dickinson — Galveston County · 20,847
- Dimmitt — Castro County · 4,171
- Dumas — Moore County · 14,501
- Duncanville — Dallas County · 40,706
- Eagle Pass — Maverick County · 28,130
- Eastland — Eastland County · 3,609
- Edna — Jackson County · 5,987
- El Campo — Wharton County · 12,350
- El Paso — El Paso County · 678,815
- Eldorado — Schleicher County · 1,574
- Elgin — Bastrop County · 9,784
- Emory — Rains County · 1,251
- Ennis — Ellis County · 20,159
- Euless — Tarrant County · 61,032
- Fair Oaks Ranch — Bexar County · 9,833
- Fairfield — Freestone County · 2,850
- Fairview — Collin County · 10,372
- Falfurrias — Brooks County · 4,609
- Farmers Branch — Dallas County · 35,991
- Farwell — Parmer County · 1,425
- Fate — Rockwall County · 17,958
- Floresville — Wilson County · 7,203
- Flower Mound — Denton County · 75,956
- Floydada — Floyd County · 2,675
- Forest Hill — Tarrant County · 13,955
- Forney — Kaufman County · 23,455
- Fort Stockton — Pecos County · 8,466
- Fort Worth — Tarrant County · 918,915
- Franklin — Robertson County · 1,614
- Fredericksburg — Gillespie County · 10,875
- Freeport — Brazoria County · 10,696
- Friendswood — Galveston County · 41,213
- Frisco — Collin County · 200,509
- Fulshear — Fort Bend County · 16,856
- Gainesville — Cooke County · 17,394
- Galena Park — Harris County · 10,740
- Galveston — Galveston County · 53,695
- Garland — Dallas County · 246,018
- Gatesville — Coryell County · 16,135
- George West — Live Oak County · 2,171
- Georgetown — Williamson County · 67,176
- Giddings — Lee County · 4,969
- Gilmer — Upshur County · 4,843
- Glen Rose — Somervell County · 2,659
- Glenn Heights — Dallas County · 15,819
- Goldthwaite — Mills County · 1,738
- Goliad — Goliad County · 1,620
- Gonzales — Gonzales County · 7,165
- Graham — Young County · 8,732
- Granbury — Hood County · 10,958
- Grand Prairie — Dallas County · 196,100
- Grapevine — Tarrant County · 50,631
- Greenville — Hunt County · 28,164
- Groesbeck — Limestone County · 3,631
- Groves — Jefferson County · 17,335
- Groveton — Trinity County · 918
- Hallettsville — Lavaca County · 2,731
- Haltom City — Tarrant County · 46,073
- Hamilton — Hamilton County · 2,895
- Harker Heights — Bell County · 33,097
- Haskell — Haskell County · 3,089
- Heath — Rockwall County · 9,769
- Helotes — Bexar County · 9,030
- Hemphill — Sabine County · 1,029
- Hempstead — Waller County · 5,430
- Henderson — Rusk County · 13,271
- Henrietta — Clay County · 3,111
- Hereford — Deaf Smith County · 14,972
- Hewitt — McLennan County · 16,026
- Highland Park — Dallas County · 8,864
- Highland Village — Denton County · 15,899
- Hillsboro — Hill County · 8,221
- Hitchcock — Galveston County · 7,301
- Hondo — Medina County · 8,289
- Horizon City — El Paso County · 22,489
- Houston — Harris County · 2,301,572
- Humble — Harris County · 16,795
- Huntsville — Walker County · 45,941
- Hurst — Tarrant County · 40,413
- Hutto — Williamson County · 27,577
- Ingleside — San Patricio County · 9,519
- Iowa Colony — Brazoria County · 8,154
- Irving — Dallas County · 256,684
- Jacinto City — Harris County · 9,613
- Jacksboro — Jack County · 4,184
- Jacksonville — Cherokee County · 13,997
- Jasper — Jasper County · 6,884
- Jayton — Kent County · 511
- Jefferson — Marion County · 1,875
- Jersey Village — Harris County · 7,921
- Johnson City — Blanco County · 1,627
- Joshua — Johnson County · 7,891
- Jourdanton — Atascosa County · 4,094
- Junction — Kimble County · 2,451
- Karnes City — Karnes County · 3,111
- Katy — Harris County · 21,894
- Kaufman — Kaufman County · 6,797
- Keller — Tarrant County · 45,776
- Kennedale — Tarrant County · 8,517
- Kermit — Winkler County · 6,267
- Kerrville — Kerr County · 24,278
- Kilgore — Gregg County · 13,376
- Killeen — Bell County · 153,095
- Kingsville — Kleberg County · 25,402
- Kirby — Bexar County · 8,142
- Kountze — Hardin County · 1,981
- Kyle — Hays County · 45,697
- La Grange — Fayette County · 4,391
- La Marque — Galveston County · 18,030
- La Porte — Harris County · 35,124
- Lacy-Lakeview — McLennan County · 6,988
- Lago Vista — Travis County · 8,896
- Lake Dallas — Denton County · 7,708
- Lake Jackson — Brazoria County · 28,177
- Lakeway — Travis County · 19,189
- Lamesa — Dawson County · 8,674
- Lampasas — Lampasas County · 7,291
- Lancaster — Dallas County · 41,275
- Laredo — Webb County · 255,205
- League City — Galveston County · 114,392
- Leakey — Real County · 315
- Leander — Williamson County · 59,202
- Leon Valley — Bexar County · 11,542
- Levelland — Hockley County · 12,652
- Lewisville — Denton County · 111,822
- Liberty — Liberty County · 8,279
- Linden — Cass County · 1,825
- Little Elm — Denton County · 46,453
- Littlefield — Lamb County · 5,943
- Live Oak — Bexar County · 15,781
- Livingston — Polk County · 5,640
- Llano — Llano County · 3,325
- Lockhart — Caldwell County · 14,379
- Longview — Gregg County · 81,638
- Lubbock — Lubbock County · 257,141
- Lucas — Collin County · 7,612
- Lufkin — Angelina County · 34,143
- Lumberton — Hardin County · 13,554
- Madisonville — Madison County · 4,420
- Manor — Travis County · 13,652
- Mansfield — Tarrant County · 72,602
- Manvel — Brazoria County · 9,992
- Marble Falls — Burnet County · 7,037
- Marfa — Presidio County · 1,788
- Marlin — Falls County · 5,462
- Marshall — Harrison County · 23,392
- Mason — Mason County · 2,121
- Matador — Motley County · 569
- McKinney — Collin County · 195,308
- Melissa — Collin County · 13,901
- Memphis — Hall County · 2,048
- Menard — Menard County · 1,348
- Meridian — Bosque County · 1,396
- Mertzon — Irion County · 747
- Mesquite — Dallas County · 150,108
- Mexia — Limestone County · 6,893
- Miami — Roberts County · 539
- Midland — Midland County · 132,524
- Midlothian — Ellis County · 35,125
- Mineral Wells — Palo Pinto County · 14,820
- Missouri City — Fort Bend County · 74,259
- Monahans — Ward County · 7,836
- Mont Belvieu — Chambers County · 7,654
- Morton — Cochran County · 1,690
- Mount Pleasant — Titus County · 16,047
- Mount Vernon — Franklin County · 2,491
- Muleshoe — Bailey County · 5,160
- Murphy — Collin County · 21,013
- Nacogdoches — Nacogdoches County · 32,147
- Navasota — Grimes County · 7,643
- Nederland — Jefferson County · 18,856
- New Boston — Bowie County · 4,612
- New Braunfels — Comal County · 90,403
- Newton — Newton County · 1,633
- North Richland Hills — Tarrant County · 69,917
- Odessa — Ector County · 114,428
- Orange — Orange County · 19,324
- Paducah — Cottle County · 1,063
- Paint Rock — Concho County · 237
- Palestine — Anderson County · 18,544
- Pampa — Gray County · 16,867
- Panhandle — Carson County · 2,378
- Paris — Lamar County · 24,476
- Pasadena — Harris County · 151,950
- Pearland — Brazoria County · 125,828
- Pearsall — Frio County · 7,325
- Pecos — Reeves County · 12,916
- Perryton — Ochiltree County · 8,492
- Pflugerville — Travis County · 65,191
- Pittsburg — Camp County · 4,335
- Plains — Yoakum County · 1,355
- Plainview — Hale County · 20,187
- Plano — Collin County · 285,494
- Pleasanton — Atascosa County · 10,648
- Port Arthur — Jefferson County · 56,039
- Port Lavaca — Calhoun County · 11,557
- Port Neches — Jefferson County · 13,692
- Portland — San Patricio County · 20,383
- Post — Garza County · 4,790
- Prairie View — Waller County · 8,184
- Princeton — Collin County · 17,027
- Prosper — Collin County · 30,174
- Providence Village — Denton County · 7,691
- Quanah — Hardeman County · 2,279
- Quitman — Wood County · 1,942
- Rankin — Upton County · 780
- Red Oak — Ellis County · 14,222
- Refugio — Refugio County · 2,712
- Richardson — Dallas County · 119,469
- Richland Hills — Tarrant County · 8,621
- Richmond — Fort Bend County · 11,627
- River Oaks — Tarrant County · 7,646
- Roanoke — Denton County · 9,665
- Robert Lee — Coke County · 1,027
- Robinson — McLennan County · 12,443
- Robstown — Nueces County · 10,143
- Roby — Fisher County · 591
- Rockport — Aransas County · 10,070
- Rocksprings — Edwards County · 874
- Rockwall — Rockwall County · 47,251
- Rosenberg — Fort Bend County · 38,282
- Round Rock — Williamson County · 119,468
- Rowlett — Dallas County · 62,535
- Royse City — Rockwall County · 13,508
- Rusk — Cherokee County · 5,285
- Sachse — Dallas County · 27,103
- Saginaw — Tarrant County · 23,890
- San Angelo — Tom Green County · 99,893
- San Antonio — Bexar County · 1,434,625
- San Augustine — San Augustine County · 1,920
- San Diego — Duval County · 3,748
- San Elizario — El Paso County · 10,116
- San Marcos — Hays County · 67,553
- San Saba — San Saba County · 3,117
- Sanger — Denton County · 8,839
- Santa Fe — Galveston County · 12,735
- Schertz — Bexar County · 42,002
- Seabrook — Chambers County · 13,618
- Seagoville — Dallas County · 18,446
- Sealy — Austin County · 6,839
- Seguin — Guadalupe County · 29,433
- Selma — Bexar County · 10,952
- Seminole — Gaines County · 6,988
- Seymour — Baylor County · 2,575
- Sherman — Grayson County · 43,645
- Silsbee — Hardin County · 6,935
- Silverton — Briscoe County · 629
- Sinton — San Patricio County · 5,504
- Snyder — Scurry County · 11,438
- Socorro — El Paso County · 34,306
- Sonora — Sutton County · 2,502
- South Houston — Harris County · 16,153
- Southlake — Tarrant County · 31,265
- Spearman — Hansford County · 3,171
- Stafford — Fort Bend County · 17,666
- Stanton — Martin County · 2,657
- Stephenville — Erath County · 20,897
- Sterling City — Sterling County · 1,121
- Stinnett — Hutchinson County · 1,650
- Stratford — Sherman County · 1,939
- Sugar Land — Fort Bend County · 111,026
- Sulphur Springs — Hopkins County · 15,941
- Sunnyvale — Dallas County · 7,893
- Sweetwater — Nolan County · 10,622
- Tahoka — Lynn County · 2,375
- Taylor — Williamson County · 16,267
- Temple — Bell County · 82,073
- Terrell — Kaufman County · 17,465
- Texarkana — Bowie County · 36,193
- Texas City — Galveston County · 51,898
- The Colony — Denton County · 44,534
- Throckmorton — Throckmorton County · 727
- Tomball — Harris County · 12,341
- Trophy Club — Denton County · 13,688
- Tulia — Swisher County · 4,473
- Tyler — Smith County · 105,995
- Universal City — Bexar County · 19,720
- University Park — Dallas County · 25,278
- Uvalde — Uvalde County · 15,217
- Van Horn — Culberson County · 1,941
- Vega — Oldham County · 879
- Vernon — Wilbarger County · 10,078
- Victoria — Victoria County · 65,534
- Vidor — Orange County · 9,789
- Waco — McLennan County · 138,486
- Watauga — Tarrant County · 23,650
- Waxahachie — Ellis County · 41,140
- Weatherford — Parker County · 30,854
- Webster — Harris County · 12,499
- Wellington — Collingsworth County · 1,896
- West University Place — Harris County · 14,955
- Wharton — Wharton County · 8,627
- Wheeler — Wheeler County · 1,487
- White Settlement — Tarrant County · 18,269
- Whitehouse — Smith County · 8,257
- Wichita Falls — Wichita County · 102,316
- Woodville — Tyler County · 2,403
- Woodway — McLennan County · 9,383
- Wylie — Collin County · 57,526
Don't see your city? The theory course is online and open to every Texan — start from the main Level III course page.